Swift: lazy 属性的写法

序言:OC中有懒加载,Swift中用lazy关键字声明属性,也可以实现懒加载。lazy所修饰的属性只有第一次访问时才加载,如果永远不访问,它就不创建,这样可以对优化内存使用。

lazy属性有两种初始化的写法:

第1种写法代码如下(存储属性):

lazy var className : string = "i am a string"

//这种写法就是在普通的赋值初始化前面加上lazy关键字。

第2种写法代码如下(计算属性):

lazy var stutentList : Array = {

// let list = downloadStudentsListFromSqlite

return list

}()

//这种写法是闭包的写法,将闭包的值赋值给lazy变量,所以末尾需要小括号(),以完成闭包的调用。

你可能感兴趣的:(Swift: lazy 属性的写法)