[英]Add data in NSMutableArray from for loop
我有一个for循环,可以从导入的文件中获取检索到的数据。
-(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];
//[_companyAddress addObject:[row objectAtIndex:1]];
//[_companyAddress addObject:_company.address];
}
i++;
}
return (NSArray *) ma;
}
我想将循环中生成的数据保存在我尝试创建的名为“ companyAddress”的全局NSMutableArray中。
[_companyAddress addObject:[row objectAtIndex:1]];
要么
[_companyName addObject:_company.address];
当我尝试在屏幕上打印_companyAddress的内容时,它仅输出“ _company.address”中包含的最后一行,因此我认为NSMutableArray中的数据将为每个循环覆盖而不是被添加。
谁能告诉我是否有任何方法可以正确添加数据?
先感谢您。
NSMutableArray companyAddress
companyAddress //在application
程序委托中的带属性和合成加分配的全局声明在application
didFinishLaunchingWithOptions
方法中
现在创建Application Delegate's
对象,说像您的Application Delegate名称是
AppDelegate then AppDelegate *objAppDelegate = (AppDelegate *)[[UIApplication sharedApplication]delegate];
该方法将是:
-(void) csvArray2CompaniesArray:(NSArray *) csvArray
{
for (NSArray * row in csvArray)
{
Company *_company = [[Company alloc] init];
_company.name = [row objectAtIndex:0];
_company.address = [row objectAtIndex:1];
_company.telephone = [row objectAtIndex:2];
[objAppDelegate.companyAddress addObject:_company];
[_company release];
}
NSLog(@"%@",objAppDelegate.companyAddress);
}
所有公司参考资料将存储在全球公司地址mutablearray中
编辑 :仅突出显示文本以获得更好的答案
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.