惰性初始化,就是在變量第一次使用的時候才進行初始化。
Swift中,有兩種方式來惰性初始化。
第一種,簡單表達式
lazy varfirst = NSArray(objects:"1","2")
第二種,閉包
lazy varsecond:String= {return"second"}()
使用場景:
1、屬性本身依賴于外部因素才能初始化
2、屬性需要復雜計算,消耗大量CPU(耗時)
3、屬性不確定是否會使用到
如果 = nil, 再用.用到的時候不會再創建,所以小心使用。
惰性初始化,就是在變量第一次使用的時候才進行初始化。
Swift中,有兩種方式來惰性初始化。
第一種,簡單表達式
lazy varfirst = NSArray(objects:"1","2")
第二種,閉包
lazy varsecond:String= {return"second"}()
使用場景:
1、屬性本身依賴于外部因素才能初始化
2、屬性需要復雜計算,消耗大量CPU(耗時)
3、屬性不確定是否會使用到
如果 = nil, 再用.用到的時候不會再創建,所以小心使用。