【发布时间】:2020-03-10 18:14:26
【问题描述】:
我以为我对 Doubles 和 Ints 有很好的理解,直到我不小心遇到了以下代码。
令我惊讶的是,以下代码运行良好。
let amounts = [50, 5.0, 10]
var total = 0.0
for i in 0..<amounts.count {
total += amounts[i]
print("Total: \(total)")
}
...但如果我将5.0 更改为10 或50 甚至更改为5,它将停止工作并生成以下错误。
错误:二元运算符“+=”不能应用于“Double”和“Int”类型的操作数
谁能告诉我为什么在混合50、5.0 和10 时代码不会中断?我的印象是这行不通。
【问题讨论】:
-
这个问题/答案是否回答了您的问题? stackoverflow.com/a/58718608/3141234