Swift中属性的几种初始化方式

Swift中的属性可以用可选项(?)和感叹号(!)来标识,
在Swift中的初始化方法中(init中),必须对属性赋初值,但是有以下几种避免的方法。

1、将属性标识为可选项(?),这样,属性有一个默认的nil初始值。
2、将属性标识为肯定有值,用感叹号(!)标识,需要注意的是,感叹号表示的是必须有值,一旦你使用一个属性是感叹号标识,但是该属性又为空的话,会发生运行时错误。
3、设置初始值,例如 var name = “jim”,这种,
3、使用懒加载属性,其实是一个闭包形式的写法,只有用到时才会进行初始化

要标明返回值,并加lazy修饰
lazy var name:String = {
       var str = "jim hello"
       return str
    }()
或者闭包写法
lazy var name = { () -> String in
        var str = "jim hello"
       return str
    }()

你可能感兴趣的:(Swift4.0,swift,属性初始化)