我有如下的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不是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
}