Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在单个数组中转换字典的数组_Ios_Objective C_Nsarray - Fatal编程技术网

Ios 在单个数组中转换字典的数组

Ios 在单个数组中转换字典的数组,ios,objective-c,nsarray,Ios,Objective C,Nsarray,此代码: server_response = [{id:1},{id:2},{id:3},{id:4}] 我现在从服务器得到以上响应,我只需要一个数组中的ID列表,如 ids = [1,2,3,4]; 我知道我们可以通过for循环来实现,但是如果响应数组中有数千个ID,则需要很长时间 有没有更好的方法来实现上述等式 NSMutableArray *resultArray = [NSMutableArray array]; for (NSDictionary *dict in server_r

此代码:

server_response = [{id:1},{id:2},{id:3},{id:4}]
我现在从服务器得到以上响应,我只需要一个数组中的ID列表,如

ids = [1,2,3,4];
我知道我们可以通过for循环来实现,但是如果响应数组中有数千个ID,则需要很长时间

有没有更好的方法来实现上述等式

NSMutableArray *resultArray = [NSMutableArray array];
for (NSDictionary *dict in server_response) {

    [resultArray addObject:[dict objectForKey:@"id"]];
}
试试上面的代码。希望它能帮助你。结果数组具有最终值

NSArray *server_response =  @[@{@"id":@"1"},@{@"id":@"2"},@{@"id":@"3"},@{@"id":@"4"}];  

    NSMutableArray *resultArray = [NSMutableArray array];

    NSString *birdtemp;
    for (NSDictionary *object in server_response) {
        birdtemp = object[@"id"];
        [resultArray addObject:birdtemp];
    }
    NSLog(@"%@",resultArray);
试试上面的代码。希望它能帮助你。结果数组具有最终值

NSArray *server_response =  @[@{@"id":@"1"},@{@"id":@"2"},@{@"id":@"3"},@{@"id":@"4"}];  

    NSMutableArray *resultArray = [NSMutableArray array];

    NSString *birdtemp;
    for (NSDictionary *object in server_response) {
        birdtemp = object[@"id"];
        [resultArray addObject:birdtemp];
    }
    NSLog(@"%@",resultArray);
输出:[ 1. 2. 3. 4. ]

输出:[ 1. 2. 3. 4. ]

从NSArray实例方法的文档
valueForKey:

返回一个数组,该数组包含在每个数组对象上调用valueForKey:using键的结果

从NSArray实例方法的文档
valueForKey:

返回一个数组,该数组包含在每个数组对象上调用valueForKey:using键的结果


如果您想查看如何使用循环:请参阅此链接:id result=[array valueForKey:@“id”]@Rog::真棒……非常感谢您……不用担心,我会将其作为答案发布,以供将来参考。@Rog::将其作为答案发布,以便我能正确回答如果您想查看如何使用循环:请参阅此链接:id result=[array valueForKey:@“id”]@Rog::太棒了……非常感谢……不用担心,我会把它作为一个答案发布,以供将来参考。@Rog::作为一个答案发布,这样我会做出正确的回答谢谢你,但我们可以不使用for-loop吗?因为如果响应数组中有1000个ID,那么编译器会花费太多的时间来执行..谢谢你,但是我们可以不使用for-loop吗响应数组中有数千个ID,编译器执行这些ID的时间太长。。