1

我有这个函数,它将数组的内容存储在三个不同的变量中。我的问题是如何从同一个类中的另一个函数访问存储在 _company.address 中的内容。

-(NSArray *) csvArray2CompaniesArray:(NSArray *) csvArray
{
    int i=0;    

    NSMutableArray *ma = [[NSMutableArray alloc] init];

    for (NSArray * row in csvArray)
    {
        if (i>0)
        {
            Company *_company = [[Company alloc] init];

            _company.name = [row objectAtIndex:0];
            _company.address = [row objectAtIndex:1];
            _company.telephone = [row objectAtIndex:2];

            [ma addObject:_company];
        }
        i++;
    }
    return (NSArray *) ma;
}

先感谢您。

4

2 回答 2

1

对象的可访问性不能在函数中是私有的。要么将其声明为全局,要么在类的范围内声明。在 .h 文件中更好

您可以将功能值用作:-

YourViewControllerWithFunction *accessFunc=[[YourViewControllerWithFunction  alloc]]init];

Company *_company=[accessFunc csvArray2CompaniesArray:youInputArray];

[_company objectAtIndex:intVallue];//Use in loop
于 2012-05-18T06:00:32.880 回答
0

您应该将函数的返回值更正为NSMutableArray或创建 acopy以获取您创建NSArray的函数。NSMutableArray

之后,您可以从类内的任何位置访问数组的内容,例如:

for (Company *c in [self csvArray2CompaniesArray:csvarray])
{
    NSLog(@"%@", c.address);
}
于 2012-05-18T06:14:38.237 回答