在Swift 2中修改数组

时间:2016-01-15 19:40:23

标签: swift2

shoppingList[4...6] = ["Bananas", "Oranges"]

不要使用下标语法将新项目附加到数组中。

但我意识到将一个或多个新项目添加到数组中,并且范围已成功。例如:

var shoppingList : Array<String> = ["Bread", "Milk", "Blackingbar", "Chian", "baba", "Oppo", "Xiaomi"]
shoppingList[4...6] = ["Bananas", "Oranges", "Huewei", "5", "6"]

for obj in shoppingList {
    print(obj)
}

为什么我们推荐“不要使用它”????

2 个答案:

答案 0 :(得分:0)

文档中的准确引用是

  

您不能使用下标语法将新项目附加到结尾   阵列。

您的代码示例将索引4 - 6中的三个项目同时替换为五个其他项目,这是不同的。只要下标范围不超出范围,操作就会成功。

答案 1 :(得分:0)

我不确定你为什么要让5个项目替换最后3个项目,但如果你需要这样做,你可以这样做:

var shoppingList : Array<String> = ["Bread", "Milk", "Blackingbar", "Chian", "baba", "Oppo", "Xiaomi"]
shoppingList = shoppingList[0..<4] + ["Bananas", "Oranges", "Huewei", "5", "6"]