簡體   English   中英

從 swift 中的字典數組創建字符串數組

[英]Creating array of string from the array of dictionaries in swift

我有 JSON 響應,如下所示:

{
    "status": true,
    "data": [
        {
            "id": 2,
            "name": "demo",            
            "last_name": "test"
        },
        {
            "id": 6,                
            "name": "test",                
            "last_name": null
        },
        {
            "id": 15,
            "name": "test",                
            "last_name": null
        }
    ],
    "message": "List fetched successfully"
}

從上面的響應中,我想創建一個字符串數組,它是鍵值的組合

姓名

從上面給出的響應。 如何實現字符串數組,如下所示:

["<name last_name>","<name last_name>","<name last_name>"]

您的幫助將不勝感激。

首先,您需要創建結構來解碼 JSON (請注意,如果它不為零,我只會附加 last_name ):

struct Model: Codable {
   let status: Bool
   let data: [DataEntry]
   let message: String
}

struct DataEntry: Codable {
   let id: Int
   let name: String
   let last_name: String?
}

解碼 JSON 后,您可以使用 map function 獲得所需的數組:

stringArray = decodedData.data.map { 
   var string = $0.name
   if $0.last_name != nil { 
      string.append(" ")
      string.append($0.last_name!)
   }
   return string
}

暫無
暫無

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

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