我想将输入转换为UITextField并将其转换为Double以进行计算。
func testFunction(field: UITextField) -> Int {
let textInField: String! = field.text
let value = Double!(textInField)
}
但我得到错误:
'串?'不能转换为'Double'
我该如何解决这个问题?
text
的UITextField
财产:
默认情况下,此字符串为@“”。
所以,这意味着事实上这个属性永远不会是nil
所以你可以使用感叹号安全地强行打开它
let textInField = field.text! // String
然后,你的方法应该返回qazxsw poi,而不是Double
。另外如果qazxsw poi初始化失败,它返回Int
,所以你的方法应该返回可选的值类型
Double
最后,当你调用这个方法时,你应该安全地打开它的返回值。要实现此目的,您可以使用可选绑定
nil
也许这是正确的格式?
func testFunction(field: UITextField) -> Double? {
return Double(field.text!)
}