Swift:为什么我的所有可选变量看起来像"可选(305.502)"

时间:2015-03-28 10:46:22

标签: ios swift optional-variables

我刚刚开始学习。我对可选类型感到困惑。我有一些变量var theOptVar: Float?它可以是零,所以我用?作为可选项 但是当我想在UI处找到它时,我会看到Optional(305.502) 有没有“{可选”字的UILabel上的可选var?

2 个答案:

答案 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代码中使用的必需常量。