[英]Swift Programming Beginner : Why is there an error in my loop when implementing a Variable?
當我嘗試在Xcode游樂場中運行代碼時,收到警告:
變量“ n”從未被突變; 考慮更改為“ let”常量。
首先,我正在循環的主體中更改變量,為什么它告訴我將其更改為let(恆定)數據類型。
func multiples (n : Int) {
var n = 1
for _ in (3 ..< 1000) {
var n = n + 1
let multiple3 = 3 * n
print(multiple3)
}
}
我在循環體內更改變量
不你不是。 循環主體中的一個是另一個n
。
要解決此問題,請更改
var n = n + 1
至
n = n + 1
這是兩個名為n
不同變量。 一個不變,並且為for循環的每個新迭代創建一個。
之所以可以使用兩個具有相同名稱的變量,是因為它們存在於不同的作用域中,並且for循環內的一個變量會在循環持續時間內暫時覆蓋循環外的變量,但僅覆蓋循環內的變量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.