swift语法-13懒加载
格式
lazy var 变量: 类型 = { 创建变量代码 }()
实质
- 懒加载的写法本质上就是定义并执行一个闭包
- 只有外界访问到listData的时候才会去执行闭包, 然后将闭包的返回值赋值给listData
写法
// 只有外界访问到listData的时候才会去执行闭包, 然后将闭包的返回值赋值给listData
// 注意: 一定要记住闭包后面需要写上(), 代表执行闭包
lazy var listData: [String]? = {
()->[String]
in
print("---")
return ["daer", "erer", "xiaoer"]
}()
开发中直接可以这样写
lazy var listData2: [String]? = {
print("---")
return ["daer", "erer", "xiaoer"]
}()
闭包实质就是一个特殊的函数
lazy var listData3: [String]? = self.test()
//定义一个函数
func test() -> [String]
{
print("+++")
return ["daer", "erer", "xiaoer"]
}
网友评论