簡體   English   中英

從NSDictionary對象的NSArray中,如何獲取唯一的NSArray

[英]From NSArray of NSDictionary objects, how to get an NSArray of uniques

我正在編寫一個處理圖片相冊的應用。

我有以下列出了相冊的JSON文檔。

{
  "Albums": [
    {
      "id": 1234,
      "Title": "My Birthday 2008",
      "Category": {
        "id": 0,
        "Name": "Birthdays"
      }
    },
    {
      "id": 5678,
      "Title": "Disneyland Trip 2010"
      "Category": {
        "id": 1,
        "Name": "Trips"
      },
    }
  ]
}

如您所見,專輯位於“類別”中。

我已經使用NSJSONSerialization類將其帶入一個NSDictionary對象,該對象包含一個NSDictionaries的NSArray(根據上述JSON的“模式”)。

由此,我想生成一個具有唯一Categories NSDictionary對象的NSArray。 就像是:

{
  "Categories": [
    {
      "id": 0,
      "Name" : "Birthdays"
    },
    {
      "id": 1,
      "Name" : "Trips"
    },
  ]
}

搜尋stackoverflow,我發現了一些看起來不錯的構建基塊

categories = [albums valueForKeyPath:@"@distinctUnionOfObjects.Category.Name"];

但這顯然只會生成NSStrings的NSArray。 我想要的是一個NSDictionaries的NSArray,其中有兩個對象,它們的鍵為“ id”和“ Name”。 如果沒有嵌套if循環的可憐/粗俗的方法,我似乎無法將所有內容組合在一起以獲得我想要的東西。 我想我正在尋找一些NSDictionary或NSArray類的實用方法,可以幫助我更快地完成此操作。

任何幫助表示贊賞,謝謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM