gpt4 book ai didi

arrays - 在 Swift 中使用 for in 循环附加数组的最佳方法是什么?

转载 作者:搜寻专家 更新时间:2023-10-31 21:50:50 24 4
gpt4 key购买 nike

我目前正在尝试通过 treehouse.com 学习如何快速编码,到目前为止我很享受。我刚刚遇到了我的第一个“代码挑战”,他们称之为我有点挣扎。正如标题所暗示的那样,以一个空数组开始:

var results: [Int] = []

这很好,花花公子。目标是然后编写一个 for in 循环,它找到数字 1-10 的 6 的倍数,然后将这些值附加到数组。我最终确实弄明白了,但我不确定我是否以理想的方式做到了。我会很感激任何批评。我的代码将包含在下面。请记住,我是 Swift 和一般编码的初学者。在此先感谢您的任何建议/提示。

var results: [Int] = []
for multiplier in 1...10 {
let multiples = (multiplier * 6)
print(multiples)
results.append(multiples)
}

代码正确执行并且数组附加了值,但同样,我不确定是否有更好的方法来执行此操作。

最佳答案

对于您的第一个问题,在 for in 中是否有更好的方式或最佳方式将对象追加到数组中?循环已经由@Alexander 解释了,但是如果检查正确,他最终还是按照你正在做的方式做不同的只是他指定了数组的容量,所以你在数组中附加对象的方式看起来很完美但为此您需要编写大量代码。

现在要减少您的代码并以 Swifty 的方式完成您当前正在做的事情,您可以使用内置的 map的功能。

let result = (1...10).map { $0 * 6 }
print(result) // [6, 12, 18, 24, 30, 36, 42, 48, 54, 60]

第一个(1...10)将创建 CountableClosedRange 之后我们调用 map(_:) 关闭它。现在map将依次从这个 CountableClosedRange 中取出每个元素.所以$0将从 CountableClosedRange 中获取每个参数.现在我们将该元素乘以 6 并从闭包返回结果并根据其返回值生成结果,在这种情况下它将创建 Array。的 Int .

关于arrays - 在 Swift 中使用 for in 循环附加数组的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42407215/

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