此代碼:轉換字典的數組中的單個陣列
server_response = [{id:1},{id:2},{id:3},{id:4}]
我收到上述來自服務器的響應,現在我只想要的ID在一個陣列像
ids = [1,2,3,4];
名單我知道我們能做for循環,但是如果在響應數組中有數千個id,則需要很長時間。
有沒有更好的方法來達到上述方程式?
此代碼:轉換字典的數組中的單個陣列
server_response = [{id:1},{id:2},{id:3},{id:4}]
我收到上述來自服務器的響應,現在我只想要的ID在一個陣列像
ids = [1,2,3,4];
名單我知道我們能做for循環,但是如果在響應數組中有數千個id,則需要很長時間。
有沒有更好的方法來達到上述方程式?
NSArray *result = [yourArray valueForKey:@"id"]
從NSArray的實例方法的文檔valueForKey:
返回一個包含調用valueForKey的結果的數組:每個數組的' s對象
NSMutableArray *resultArray = [NSMutableArray array];
for (NSDictionary *dict in server_response) {
[resultArray addObject:[dict objectForKey:@"id"]];
}
試試上面的代碼。希望它能幫助你。結果陣列具有最終值
謝謝,但我們可以做沒有for循環,因爲如果在響應數組中的一千個ids然後編譯器需要太多時間來執行.. –
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,]
id result = [數組valueForKey:@「id」]這是解決方案.. –
沙我知道你的答案是正確的,但我想不做循環... –
奧凱沒有問題。 thanx @BandishDave –
如果你想看看如何使用循環:請參閱此鏈接:http://stackoverflow.com/questions/32414456/how-to-give-the-integer-key-value-for -dictionary/32414512?noredirect = 1#comment52737940_32414512 –
id result = [array valueForKey:@「id」] – Rog
@Rog :: awesome ...非常感謝你...... –