swift3 有关lazy宣告的差別跟使用时机

因为小妹的swift 应该算自学吧,只有在补习班上过入门课,然后,公司目前只有我一个人开发swift ,也没有前人留下来的案例可以参考,故,在专案上有很多不懂的地方,例如,专案的写法 配置,等等等,但这不是重点 (笑)

我看很多人给我参考的专案 常常用 lazy var ,或是 XXX.lazy.map 这个 「lazy var 」跟「 var 」,有什么不同,而 lazy 的使用时机点在哪里,什么时候用?

很多大大 有讲解给小妹听,但是对小妹来说,就像在看经文一样,我完全有听没有懂,到现在还是不了解 lazy的使用方式跟时机,有大大可以用 「白话文 」简单 的让小妹了解一下吗?(感谢了

阅读 3k
1 个回答

var: 属性在对象初始化init前就要分配内存空间赋予初始值.
lazy var: 对象不一定会用到这个属性, 当用到时这个属性才会初始化分配空间, 只需要初始化一次,在变量定义的地方初始化


如果属性在对象初始化就要有初始值, 那么使用var.
如果对象在初始化后不一定要用到这个属性, 或者需要外部因素才能决定的, 那么使用lazy var.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进