gpt4 book ai didi

swift - 如何将两个长度不同的数组的值相加?

转载 作者:行者123 更新时间:2023-12-05 04:53:30 27 4
gpt4 key购买 nike

如果我有两个 int 数组,例如

var array1 = [1,2,3]
var array2 = [1,2,3,5]

我希望能够将第一个数组的第一个元素与第二个数组的第一个元素相加,依此类推。但是,如果一个数组的长度与另一个数组的长度不同,我想保留未添加到返回数组中的元素。对于此示例,我的返回数组将是 [2,4,6,5]

我尝试使用 zip(array1,array2).map(+) 但它会从 array2 中排除 5。

最佳答案

在两个数组共有的索引位置添加元素后(你已经用 zipmap 做了),只需附加两个数组中的剩余元素(使用 append(contentsOf:)dropFirst:

let array1 = [1, 2, 3]
let array2 = [1, 2, 3, 5]

var combined = zip(array1, array2).map(+)
let commonCount = combined.count
combined.append(contentsOf: array1.dropFirst(commonCount))
combined.append(contentsOf: array2.dropFirst(commonCount))

print(combined) // [2, 4, 6, 5]

关于swift - 如何将两个长度不同的数组的值相加?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66033726/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com