Swift中的Lazy与计算属性
一般来说,Swift中lazy定义计算属性的写法像下面这样,类似闭包的语法
1 2 3 4 5 | lazy var players : [ String ] = { var temporaryPlayers = [ String ] ( ) temporaryPlayers . append ( "John Doe" ) return temporaryPlayers } ( ) |
或者实例方法
1 2 3 4 5 6 | lazy var players : [ String ] = self . initialPlayers ( ) func initialPlayers ( ) -> [ String ] { var players = [ "John Doe" ] return players } |
1 2 3 4 5 6 7 8 9 | class TestClass { lazy var players = TestClass . initialPlayers ( ) class func initialPlayers ( ) -> [ String ] { var players = [ "John Doe" ] return players } } |
1. init初始化前,对象的属性还不知道的时候
【Swift中的Lazy与计算属性】 2. 某个属性需要大量计算耗时,但是init对象的时候又不是必须用到这个属性的时候
推荐阅读
- 热闹中的孤独
- JS中的各种宽高度定义及其应用
- 我眼中的佛系经纪人
- 《魔法科高中的劣等生》第26卷(Invasion篇)发售
- Android中的AES加密-下
- 放下心中的偶像包袱吧
- C语言字符函数中的isalnum()和iscntrl()你都知道吗
- C语言浮点函数中的modf和fmod详解
- C语言中的时间函数clock()和time()你都了解吗
- 如何在Mac中的文件选择框中打开系统隐藏文件夹