2012-09-19 39 views
0

我有一個充滿數據的NSDictionary。如果這是PHP它可能被訪問的東西,如:目標C中的多維數組

$data = $array['all_items'][0]['name']; 

我該如何做目標c類似的東西? ($array將是一個NSDictionary

+0

我想這裏的數據是NSArray,其中是NSDictionary。 – Mil0R3

回答

3

在Objective-C的等效代碼是:

id data = [[[array objectForKey:@"all_items"] objectAtIndex:0] objectForKey:@"name"]; 

注意objectForKey:是NSDictionary中的方法,和objectAtIndex:是NSArray中的方法。

在Xcode 4.5的快捷方式,使用LLVM 4.1,是:

id data = array[@"all_items"][0][@"name"]; 

還要注意的是,如果「陣列」是一個NSDictionary實例,你想獲得的所有值的字典中的數組,可以使用的NSDictionary的allValues方法:

id data = [array allValues][0][@"name"]; 

當然,allValues返回一個未排序的陣列,通過索引,以便訪問該陣列是不是非常有用。更典型的,你會看到:

for (NSDictionary* value in [array allValues]) 
{ 
    id data = value[@"name"]; 
    // do something with data 
} 
0

你應該使用它,

NSString *value = [[multiArray objectAtIndex:1] objectAtIndex:0]; 

你可以看問題here