我有一个NSMutableArray我正在尝试转换为字符串 声明我的NSMutableArray ......
NSMutableArray *listData;
后来在方法中......
NSString *foo = [listData componentsJoinedByString:@"|"];
NSLog(@"%@",foo);
似乎无论我尝试什么,我都会继续获得EXC_BAD_ACCESS 为了确保我的数组中的每个元素都是NSString,我也试过了......
NSMutableArray *mArray = [[NSMutableArray alloc] init];
for (id ln in listData) {
NSString *boo = [NSString stringWithFormat: @"%@",ln];
[mArray addObject:boo];
}
NSString *foo = [mArray componentsJoinedByString:@"|"];
NSLog(@"%@",foo);
我可以通过在同一个方法中添加/删除对象或我班级中的其他方法来操纵我的NSMutableArray。但是当我尝试“componentsJoinedByString”时会弹出错误。有没有人有任何建议或其他方式我可以将这个数组合成一个NSString?
答案 0 :(得分:1)
在您提供的代码中,NSMutableArray
永远不会有listData
。在代码中的某个时刻,您需要创建一个,并且可能填充它。
修改强> 好的,所以你可能会遇到内存管理问题,所以让我们更清楚一点:
您正在为实例变量合成getter和setter,因此最好使用它们来访问它,它们会妥善保留和释放。
要设置listData
,您只需使用
self.listData = [listManage getList:[[NSUserDefaults standardUserDefaults] stringForKey:@"list_name"] list:@"LIST"];
或
[self setListData:[listManage getList:[[NSUserDefaults standardUserDefaults] stringForKey:@"list_name"] list:@"LIST"]];
如果您愿意。