Swift入门篇---Optional Value 和 if let 防止值丢失

通过在类型后面加一个 ? 来将变量声明为 Optional 的。
如果不是 Optional 的变量,那么它就必须有值。
如果可能没有值的话,我们使用 Optional 并且将它设置为 nil 来表示没有值。

//num 不是一个 Int 
var num: Int?   
//num 没有值 
num = nil  //nil   
//num 有值 
num = 3    //{Some 3} 
//如果不声明为Optional,又设为nil时则会报错 Nil cannot be assigned to type 'Int'
var count:Int = 0
count = nil

如果可选值为nil,则条件判断为false,花括号中的代码会被跳过。反之,可选值去包装并且赋给let后面的常量,使得去包装的值可以在代码块内部访问。

var num: Int? = 3   
if let n = num {   
    //have a num 
    n++
} else { 
    //no num 
    n--
}

你可能感兴趣的:(Swift入门篇---Optional Value 和 if let 防止值丢失)