2013-05-14 75 views
0

我想在for循環中獲取NSMutableDictionary的KEY的名稱。但是我感到沮喪,因爲我找不到合適的函數來獲取KEY而不必引用對象。如何獲取NSMutableDictionary的鍵的名稱

我將不勝感激一些指導。我想關鍵是一個String

NSMutableDictionary* myMutaDictionary = @{ @"theValeIwantOne":@{key:value}, 
          @"theValeIwantTwo":@{key:value} 
          }; 

for (NSDictionary* myDictionary in myMutaDictionary) { 
    NSString* key1 = //... code to get theValeIwantOne and theValeIwantTow; 
} 

我來自PHP地方這種操作很簡單,只要

foreach ($variable as $key => $value) { 

    $thisIsMyKeyName = $key; 
    $thisIsTheValueOfThatKey = $value; 
} 
+0

這PHP代碼是不就像它看起來那麼簡單... –

+0

它的一個經典的foreach循環在php –

+0

正是如此。 PHP中的foreach循環在狀態方面存在一些主要問題。你不能爲同一個數組嵌套'foreach'循環。 –

回答

2

聽起來像是你正在尋找keyEnumerator

for (NSString *key in [dict keyEnumerator]) { 
    NSString *value = [dict objectForKey:key]; 
} 
+0

但我的值是一個字符串不是int。那仍然有效嗎? –

+0

@JonathanThurft:這裏的值的類型是'id',而不是'NSString *'。 –

+0

@JonathanThurft是的。我更新了我的答案。順便說一下'id',而不是'int'。 'id'只是表示某種對象,就像一個字符串。 – daltonclaybrook