Day Two 闭包的懒加载

swift中的懒加载就是一个闭包,只执行一次的闭包,懒加载有两种调用方式:1.只使用闭包的方式,这种方式没有延迟调用的特性,在持有它的对象初始化的时候就会调用,就像上面的代码;2.带有Lazy关键字修饰的闭包方式,这种只有在使用的时候才会调用,Lazy是延迟调用关键字。


lazy var dataList:[String] = {
print("我被搞了")
return ["1","2","3"]
}()


override func touchesBegan(_ touches: Set, with event: UIEvent?) {

    print(dataList)
    print(dataList)
    print(dataList)
    
}


我被搞了
["1", "2", "3"]
["1", "2", "3"]
["1", "2", "3"]

你可能感兴趣的:(Day Two 闭包的懒加载)