iOS中数组的处理

数组格式是这样的

[{

id = 0;
name = "aaa";

},
{

id = 2;
name = "bbb";

},
{

id = 11;
name = "ccc";

}]

我想获取name中的元素:并且把它们重新做成一个新的数组。

这样[@"aaa",@"bbb",@"ccc"]

阅读 4.9k
5 个回答
NSArray *arr = 你的数组;
NSArray *nameArray = [arr valueForKey:@"name"];

如果使用的是 Swift 的话,可以这样处理:

let dicArr: [Dictionary] = [xxx,xxx,xxx]
let nameArr: [String] = dicArr.map{dictionary in return let name = dictionary["name"]}

用forIn遍历数组中的字典元素,取出里面的关键字@“name”(array[@"name"]),将其添加到另一个数组内。

for (NSArray * tmpArray in AllArray) {
        //AllArray是起始数组
    }

可以利用字典keys的属性 进行遍历 会方便很多

 NSArray *dictArr = @[
                            @{@"id":@"0",
                                @"name" : @"aaa"
                                  },
                            @{@"id":@"2",
                              @"name" : @"bbb"
                              },
                            @{@"id":@“11",
                              @"name" : @"ccc"
                              },
                        ];
    
        NSArray *nameArray = [[dictArr.rac_sequence map:^id(NSDictionary *dict) {
                       return dict[@"name"];
                    }] array];
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题