gpt4 book ai didi

ios - 2个数组中的元素相乘和相加

转载 作者:搜寻专家 更新时间:2023-11-01 05:48:25 24 4
gpt4 key购买 nike

我有 2 个数组,分别是 arrayAarrayBarrayA 的元素为 [1,2],arrayB 的元素为 [3,4]。现在我想像这样对这些数组中的元素进行乘法和相加。1x3 + 2x4 = 11。我怎样才能实现这个...?

最佳答案

这里是 zip、ma​​p 和 reduce 的组合:

let result = (zip([1,2], [3,4]).map { $0.0 * $0.1 }).reduce(0, +)
print(result) // 11

  1. Zip基于两个数组生成一个对序列:(1,3), (2,4)
  2. map我正在迭代数组中的每个元素,每次迭代都会生成一个新元素
  3. $0表示当前迭代中序列的元素。由于该元素是一对(由于 zip),我们可以使用 $0.0 访问该对的第一个子元素,使用 $0.1 访问第二个子元素。
  4. 最后(在 map 之后)我们得到了一个产品数组,只需要将其“减少”为一个数字,将所有结果元素与 reduce 相加即可。 .
  5. (0, +) 表示 reduce0 开始作为初始值,然后使用缩写 +我们可以累加所有元素的总和。

关于ios - 2个数组中的元素相乘和相加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48596076/

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