从 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>","<name last_name>"]
我们将不胜感激。
首先,您需要创建结构来解码 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 后,您可以使用映射函数获取所需的数组:
stringArray = decodedData.data.map {
var string = [=11=].name
if [=11=].last_name != nil {
string.append(" ")
string.append([=11=].last_name!)
}
return string
}
我有 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>","<name last_name>"]
我们将不胜感激。
首先,您需要创建结构来解码 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 后,您可以使用映射函数获取所需的数组:
stringArray = decodedData.data.map {
var string = [=11=].name
if [=11=].last_name != nil {
string.append(" ")
string.append([=11=].last_name!)
}
return string
}