快速从字典数组中创建字符串数组
Posted
技术标签:
【中文标题】快速从字典数组中创建字符串数组【英文标题】:Creating array of string from the array of dictionaries in swift 【发布时间】:2020-06-12 06:40:52 【问题描述】:我有如下 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,研究过如何迭代数组或如何在 swift 中使用高阶函数? 【参考方案1】:首先,您需要创建结构来解码 JSON(请注意,如果不是 nil,我只会附加 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 函数获取所需的数组:
stringArray = decodedData.data.map
var string = $0.name
if $0.last_name != nil
string.append(" ")
string.append($0.last_name!)
return string
【讨论】:
以上是关于快速从字典数组中创建字符串数组的主要内容,如果未能解决你的问题,请参考以下文章