我是编程新手并从Swift开始。我带来的第一个问题如下:
我有4个变量
var a = "345"
var b = "30.6"
var c = "74hf2"
var d = "5"
我需要计算整数的总和(如果不是整数,它将变为零)
if Int(a) != nil {
var aNum = Int(ar)!
}
if Int (b) != nil {
var bNum = Int (b)!
}
依旧......
据我所知,Int()应该将每个元素转换为一个Optional Integer。
然后我应该通过转换Int来强制解包?到Int,然后才能将它用于我的目的。但相反,当我计算变量的总和时,编译器会将它们相加为字符串。
var sum = aNum + bNum + cNum + dNum
输出:
34530.674hf25
为什么我的变量被声明为字符串然后用Int()转换为可选的整数,为什么不起作用?
答案 0 :(得分:2)
您的代码存在拼写错误,因此很难说出您实际要做的事情:
假设您的第二个变量应为b
,如下所示:
var a = "345"
var b = "30.6"
var c = "74hf2"
var d = "5"
///Then you can use code like this:
var sum = 0
if let aVal = Int(a) { sum += aVal }
if let bVal = Int(b) { sum += bVal }
if let cVal = Int(c) { sum += cVal }
if let dVal = Int(d) { sum += dVal }
print(sum)
打印350
,因为只有345
和5
是有效的Int值。