2014-12-02 56 views
-1

我有一個NSDictionary結構如下沒有根鍵名的NSDictionary對象,我如何遍歷條目?

"2" = (
    "multi" = "1", 
    "catID" = "2" 
    ) 
"3" = (
    "multi" = "1", 
    "catID = "3" 
    ) 

是否有可能得到一個新的陣列中的所有「CATID」的價值觀?

+0

其實,這不是一個NSDictionary。事實上,我不知道它是什麼。 – 2014-12-03 00:07:39

+0

你是什麼意思的「根密鑰」?在你的例子中,它看起來像你的鍵是數字,你的值包含一個具有相同數字的「catID」。 – CrimsonChris 2014-12-03 00:09:13

+1

但是如果你有一個NSDictionary,看起來有點像這樣,你可以通過實際諮詢文檔來找到如何處理它。你需要知道的一切就在那裏。 – 2014-12-03 00:09:22

回答

-1

我用allValues(我被套牢allKeys)

NSArray *values = [itemElements allValues]; 
NSLog(@"Values:%@",[values valueForKey:@"catID"]); 
0

它看起來像含字典詞典得到它。外部字典具有鍵「2」和「3」。每個內部詞典都有鍵「多」和「貓」。

如果我是對的,並且你想要一個包含每個內部字典中「多」鍵值的數組,你可以使用NSDictionary方法-enumerateKeysAndObjectsUsingBlock:來構建它。你會在塊外部創建一個空的可變數組,然後在塊內部獲取當前對象的「多」鍵的值並將其添加到數組中。

請注意,詞典是無序集合,因此不會定義結果數組的順序。

如果外部字典的鍵始終是整數的字符串值,則可以改爲編寫使用for循環遍歷每個鍵的數值的代碼,構建該數字的字符串版本,獲取內部字典爲該值,並將該字典的「多個」鍵的值附加到該數組。

不過,我在猜測。您的描述含糊不清,與您原始帖子中提供的數據不符。