【发布时间】:2018-04-29 11:46:39
【问题描述】:
我需要使用 for 循环填充一个数组(已经声明和初始化),以便创建确定数量的项目。
我最终得到了以下代码:
func createValues() -> Array<Int> {
let usableRange:Range = 6..<11;
var arrayOfValues: Array<Int>=[]; //Array declared and initialized
for i in 0..<10 {
arrayOfValues.append(random(usableRange));
print(arrayOfValues[i]);
}
return arrayOfValues;
}
这段代码符合我的预期。但是,一旦我注释掉该行
print(arrayOfValues[i]);
Xcode 抛出以下警告:
从未使用过不可变值“i”;考虑替换为“_”或 删除它
如果我接受建议,代码可以工作,但不如以前那么好。
我刚刚从 Obj-C 过渡到 Swift,我真的不知道应该采用什么正确的方法。任何帮助,将不胜感激。提前致谢。
附:我知道我不再需要分号了,但我想旧习惯很难改掉……
【问题讨论】:
-
“没有以前那么好了。”为什么不?唯一的区别是它不打印任何东西
-
请学习阅读和理解错误/警告信息。这是最容易理解的之一。
-
好吧,通过按下一个按钮,代码应该在一个范围内生成随机数。如果给定数字的平均值不是范围的平均值,它将生成新数字,直到它生成。这一切都很好,但是当我将 'i' 替换为 _ 时,我必须多次按下按钮,直到我在控制台上打印出一些东西。我现在正在调试它,看看问题出在哪里......
-
@vadian 我理解警告很好。问题是如何以正确的无警告方式做我想做的事
-
正如 Leo 已经提到的,代码的作用完全相同(创建 10 个随机数),只是它不会在循环中打印任何内容。
标签: arrays swift macos for-loop