如果String是可选的,如何将String转换为Double?

问题描述 投票:-2回答:2

我想将输入转换为UITextField并将其转换为Double以进行计算。

func testFunction(field: UITextField) -> Int {
   let textInField: String! = field.text
           let value = Double!(textInField)

}

但我得到错误:

'串?'不能转换为'Double'

我该如何解决这个问题?

swift string type-conversion uitextfield double
2个回答
0
投票

textUITextField财产:

默认情况下,此字符串为@“”。

所以,这意味着事实上这个属性永远不会是nil所以你可以使用感叹号安全地强行打开它

let textInField = field.text! // String

然后,你的方法应该返回qazxsw poi,而不是Double。另外如果qazxsw poi初始化失败,它返回Int,所以你的方法应该返回可选的值类型

Double

最后,当你调用这个方法时,你应该安全地打开它的返回值。要实现此目的,您可以使用可选绑定

nil

-1
投票

也许这是正确的格式?

func testFunction(field: UITextField) -> Double? {
    return Double(field.text!)
}
© www.soinside.com 2019 - 2024. All rights reserved.