Я играю с Swift. Почему можно объявить let
тип в цикле? Насколько мне известно, let
означает постоянный, поэтому я смущен.Пусть тип в a для петли
func returnPossibleTips() -> [Int : Double] {
let possibleTipsInferred = [0.15, 0.18, 0.20]
//let possibleTipsExplicit:[Double] = [0.15, 0.18, 0.20]
var retval = Dictionary<Int, Double>()
for possibleTip in possibleTipsInferred {
let inPct = Int(possibleTip * 100)
retval[inPct] = calcTipWithTipPct(possibleTip)
}
return retval
}
'let' определяет область действия на основе постоянная - в вашем случае в течение петли. Это в основном означает, что присвоение нового значения переменной, объявленной с помощью «let», невозможно. – Eugene
Подумайте об этом в терминах 'var'' 'Mutable' и' let' '' Immutable' вместо константы. – barrett