我是编程的新手,我正在迅速尝试。但是这个简单的代码不起作用,因为两个bool操作数不能组合。有人可以解决这个问题吗?
var money = true
var debt = true
if money {
var money = 500
} else {
var money = 0
}
if debt {
var debt = -10
} else {
var debt = 0
}
var totalMoney = debt + money
print (totalMoney)
答案 0 :(得分:2)
你不能将(+
)加起来为2布尔值。
这条线应该是什么意思?
true + false
您还可以使用其他操作符,例如OR ||
或AND &&
我怀疑你想要将你在IF / ELSE块范围内定义的变量加起来
if money {
var money = 500 // <- this
} else {
var money = 0 // <- and this right?
}
但是这些变量只存在于声明它们的{ }
中。
所以我建议你的钱和债务布尔值使用不同的名称,并在if
范围之外定义货币和债务(Int变量/常数)var isMoney = true
var isDebt = true
let money: Int
let debt: Int
if isMoney {
money = 500
} else {
money = 0
}
if isDebt {
debt = -10
} else {
debt = 0
}
var totalMoney = debt + money
测试
print(totalMoney)
// 490
现在您可以将debt
和money
相加,因为它们是Int
值