【发布时间】:2019-08-02 04:27:43
【问题描述】:
我想将输入转换为 UITextField 并将其转换为 Double 以进行计算。
func testFunction(field: UITextField) -> Int {
let textInField: String! = field.text
let value = Double!(textInField)
}
但我得到了错误:
'字符串?不能转换为“双”
我该如何解决这个问题?
【问题讨论】:
-
你不能解开一个类型。函数的返回类型应该是可选的:
Int?,return Int(field.text!)应该可以。 -
强制解包
field.text! -
首先要考虑的是,如果 String 是可选的,那么如果 String 为 nil,你想返回什么 Double 值。
-
@UpholderOfTruth 这不是文本属性默认值是空字符串的情况。 UITextField 的 text 属性永远不会返回 nil
-
自己试试吧。将 text 设置为 nil 并在其后检查其值。 这个字符串默认是@""。
标签: swift string type-conversion uitextfield double