首页 > 解决方案 > Swift 将数组追加到数组

问题描述

大家好,我遇到了这种数组的问题,所以基本上我想将数据传递给我的服务器,如下所示:

{adult=[["Mr", "Benedict Cumberbatch", "07", "September", "1989", "null", "0", "null", "null", "null", "null", "null"],["Mr", "Tony Stark", "17", "July", "1996", "null", "0", "null", "null", "null", "null", "null"]]}

我有这样的数组

["Mr", "Benedict Cumberbatch", "07", "September", "1989", "null", "0", "null", "null", "null", "null", "null"]

还有这个

["Mr", "Tony Stark", "17", "July", "1996", "null", "0", "null", "null", "null", "null", "null"]

我用这段代码创建它:

    PassengerModel.passenger_array_json.append(title)
    PassengerModel.passenger_array_json.append(name)
    PassengerModel.passenger_array_json.append(date!)
    PassengerModel.passenger_array_json.append(month!)
    PassengerModel.passenger_array_json.append(year!)
    PassengerModel.passenger_array_json.append("null")
    PassengerModel.passenger_array_json.append("0")
    PassengerModel.passenger_array_json.append("null")
    PassengerModel.passenger_array_json.append("null")
    PassengerModel.passenger_array_json.append("null")
    PassengerModel.passenger_array_json.append("null")
    PassengerModel.passenger_array_json.append("null")

所以我有一个想法,如果我将数组附加到一个数组会给我这个结果,我试试这个:

PassengerModel.passenger_array_json_2.append(PassengerModel.passenger_array_json)

但它给了我一个错误,任何人都知道,我可以以某种方式创建这样的数据:

["Mr", "Benedict Cumberbatch", "07", "September", "1989", "null", "0", "null", "null", "null", "null", "null"],["Mr", "Tony Stark", "17", "July", "1996", "null", "0", "null", "null", "null", "null", "null"]

标签: arraysjsonswiftxcode

解决方案


你的代码到底是什么?

let sherlock = ["Mr", "Benedict Cumberbatch"] //Implicit type of sherlock: [String] (or Array<String> if you want)
let ironman = ["Mr", "Tony Stark"]
var characters: [[String]] = [] //Here you create an array of arrays, so one entry for each superhero
characters.append(sherlock)
characters.append(ironman)

作品。您不能追加ironmansherlock,因为sherlock它是一个仅包含字符串的数组,结果将是 ["Mr", "Benedict Cumberbatch", ["Mr", "Tony Stark"]](这将不是您想要的,并且不再是字符串数组(第三个条目是一个数组...))。所以你需要一个新的数组给你的演员

编辑: 对于正在寻找标题答案的每个人,这里是文档中的一个示例:

var numbers = [1, 2, 3, 4, 5]
numbers.append(contentsOf: 10...15)
print(numbers)
// Prints "[1, 2, 3, 4, 5, 10, 11, 12, 13, 14, 15]" here

推荐阅读