我一直在寻找这个,但未能找到合适的解决方案。是否可以为数组中的每个对象创建一个数组?让我说我有一个数组' fruits'
NSMutableArray *fruits=[[NSMutableArray alloc]init];
[fruits addObject:@"apple"];
[fruits addObject:@"banana"];
[fruits addObject:@"mango"];
现在我的数组中有三个对象。是否可以为阵列中的每个对象创建一个数组' fruit'。
我可以做点什么吗
for(int i=0;i<fruits.count;i++){
NSMutableArray *fruits_%d=[[NSMutableArray alloc]init];
}
我知道这是一个大错。我有什么方法可以做到吗?
提前致谢。
答案 0 :(得分:2)
您可以改用词典:
NSMutableDictionary *fruitDict=[[NSMutableDictionary alloc]init];
[fruitDict setObject:[[NSMutableArray alloc]init] forKey:@"apple"];
[fruitDict setObject:[[NSMutableArray alloc]init] forKey:@"banana"];
[fruitDict setObject:[[NSMutableArray alloc]init] forKey:@"mango"];
或者语法更清晰:
NSMutableArray *fruits=[[NSMutableArray alloc]init];
[fruits addObject:@"apple"];
[fruits addObject:@"banana"];
[fruits addObject:@"mango"];
NSMutableDictionary *fruitDict = [[NSMutableDictionary alloc] init];
for (NSString *fruit in fruits)
{
[fruitDict setObject:[[NSMutableArray alloc]init] forKey:fruit];
}
然后当你想要检索数组时:
NSMutableArray *myArray = fruitDict[@"banana"]
上面的代码将生成香蕉项的数组。
答案 1 :(得分:1)
我不知道你到底想要什么,但也许你可以这样做:
NSMutableArray *fruits = [[NSMutableArray alloc] init];
[fruits addObject:@"apple"];
[fruits addObject:@"banana"];
[fruits addObject:@"mango"];
NSMutableArray *arrayOfFruits = [[NSMutableArray alloc] initWithCapacity:fruits.count];
for (int i = 0; i < fruits.count; i++) {
[arrayOfFruits addObject:@[fruits[i]]];
}