当我从文本字段中获取值并将其转换为整数时,如果输入5,我会得到Optional(5)
的日志输出,如果我输入了1234,则会得到Optional(1234)
。
Optional()
是什么意思?
以下是获取和转换值的代码:
@IBOutlet weak var myInput: UITextField!
// When a button is clicked, I log the value in the UI text field.
@IBAction func someButton(sender: AnyObject) {
println(self.myInput.text.toInt())
}
答案 0 :(得分:0)
可选表示值为Optional
类型。它可以是nil
或值。使用cocoa api时,大多数方法参数都是可选类型。要从可选值获取实际值,您可以使用if-let
绑定或强制它使用!
运算符将其解包。假设ve的值为a
Int
的可选类型。让我们先定义它。
let a: Int? = 5
?
表示它是可选值。如果您打印此a
,则会写Optional(5)
。让我们从中获得实际价值。
if let actualA = a {
println(actualA)
}
现在如果a
不是nil
,那么if-let语句中的代码将被执行,它将在控制台上打印5
。
可选类型用于处理swift中的nil
值。它们在工作参数和变量时提供额外的安全性。如果某个值不是可选的,那么它永远不会是nil
。因此,我们可以安全地完成工作,而无需担心nil
值。