Nil合并运算符在运行时没有捕获'nil'值?

时间:2017-01-16 21:36:46

标签: ios swift casting

任何人都可以帮助我理解为什么第一行代码生成运行时EXC_BAD_INSTRUCTION错误而第二行没有生成?

let actualHandicap = Float(exactHandicap.text ?? "0.0")
let shotsGiven = Int(numShotsGiven.text ?? "0")

这两行代码的目的是初始化float actualhandicap 和int shotsGiven 。如果两个UITextField实例( exactHandicap numShotsGiven nil ,我希望它们都设置为零。

此代码摘自我基于tutorial from Apple构建的segue展开方法。

应用程序编译并运行,但在调用unwind方法时总会崩溃。 stdout显示致命错误:在展开可选值时意外发现nil

actualHandicap contents of the local variables in the debugger indicate未按预期设置为零,但 shotsGiven 已设置为。

作为一个Swift新手,我希望我缺少一些基本的东西,我如何使用Int()和Float()函数将字符串转换为零,但我无法看到出现了什么问题。< / p>

感激不尽的任何帮助。

0 个答案:

没有答案