因此,我对制作 APP 广告 Swift 非常陌生,我尝试在文本字段中进行一些非常简单的输入,获取值,并将它们用作 Int 进行某些计算。

但是“无功距离”有些东西不能正常工作

        var handicapTal:Int
        var MagicNumber:Int
        var handicap = inputHCP.text.toInt()
        var distance = inputDistance.text.toInt()

        if (handicap >= 0 && handicap <= 20)
        {
            handicapTal = 30
        }
        else if(handicap > 20 && handicap <= 40){
            handicapTal = 10
        }

        MagicNumber = distance - handicapTal

它是给出错误的最后一行代码。它说致命错误:无法解开 Optional.None

最佳答案

距离,在你的例子中,是一个 Int?也称为可选的 Int。 .toInt() 返回 Int?因为从 String 到 Int 的转换可能会失败。请参阅以下示例:

Welcome to Swift!  Type :help for assistance.
  1> let a = "12"
a: String = "12"
  2> let b = a.toInt()
b: Int? = 12
  3> let c = "Hello"
c: String = "Hello"
  4> let d = c.toInt()
d: Int? = nil
  5> if let e = a.toInt() { println("e = \(e)") }
e = 12
  6> if let f = c.toInt() { println("Huh?") }
  7>

10-08 13:03