我刚刚开始学习。我对可选类型感到困惑。我有一些变量var theOptVar: Float?
它可以是零,所以我用?
作为可选项
但是当我想在UI处找到它时,我会看到Optional(305.502)
有没有“{可选”字的UILabel
上的可选var?
答案 0 :(得分:2)
显示“可选”,因为您已将其数据类型从Float
更改为Optional Float
。
由于这个价值,它将自动包含在可选文本中。
因此,如果您不想显示可选字,只需从中提取值即可。
为此,请添加 !
标记。 强制解包。
例如。
var temp : Float?
temp = 60.5
println(Value \(temp!))
答案 1 :(得分:1)
你可以使用Rob描述的隐式解包(aFloat!
,如果aFloat为nil会崩溃)
或
可选绑定
if let requiredFloat = aFloat
{
//Code that only runs if aFloat is != nil
println("aFloat = \(requiredFloat)")
}
else
{
println("aFloat = nil")
}
可选绑定为您做两件事:检查可选项是否为nil,如果为nil则跳过代码块。如果它不是nil,它会将可选项分配给您可以在if代码中使用的必需常量。