我有第一个数组:["0", "0", "0", "0", "0", "0", "0"]
和第二个数组:["1", "0", "1", "1"]
。
现在我需要用第二个数组中的元素替换第一个数组
结果应为:["1", "0", "1", "1", "0", "0", "0"]
答案 0 :(得分:5)
尝试:
var array1 = ["0", "0", "0", "0", "0", "0", "0"]
let array2 = ["1", "0", "1", "1"]
array1[0..<array2.count] = array2[0..<array2.count]
println(array1)
答案 1 :(得分:4)
您可以使用enumerate
函数在循环时获取索引:
var arr1 = ["0", "0", "0", "0", "0", "0", "0"]
let arr2 = ["1", "0", "1", "1"]
for (index, value) in enumerate(arr2) {
arr1[index] = value
}
arr1 // ["1", "0", "1", "1", "0", "0", "0"]
答案 2 :(得分:3)
你可以这样做:
var array1 = ["0", "0", "0", "0", "0", "0", "0"];
var array2 = ["1", "0", "1", "1"];
array1.replaceRange(Range(start:0, end:array2.count), with: array2)
NSLog("\(array1)");
[1,0,1,1,0,0,0]
答案 3 :(得分:2)
你可以试试这个:
var arr = [1,2,3,4,5,6,7,8,9,10]
var arr2 = [6,7,8,9,10]
arr[0...arr2.count-1] = arr2[0...arr2.count-1]
println(arr) // prints "[6, 7, 8, 9, 10, 6, 7, 8, 9, 10]"
arr [i ... j]为您提供第i个和第j个元素之间的范围(包括),因此您可以直接更改数组的特定部分。