iOS 为什么不用NSMutableArray取代NSArray
2016-04-23 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
关注
展开全部
NSArray 和 NSMutableArray 的底层结构应该是差不多的。区别从名字就可以看到,NSArray 不可变,而 NSMutableArray 可变。NSArray 因为不可变,实现起来会更简单些
不可变结构附带有如下好处:
功能单一,实现起来会更简单。
没有修改的数据的接口,就从根源防止了数据无意中被修改。
因为不会被修改,更容易被缓存复用。
因为不可变,只读,多线程访问的时候,也不会发生一边读一边写的情况,也就没有同步的问题,也就不用上锁。
不可变结构附带有如下好处:
功能单一,实现起来会更简单。
没有修改的数据的接口,就从根源防止了数据无意中被修改。
因为不会被修改,更容易被缓存复用。
因为不可变,只读,多线程访问的时候,也不会发生一边读一边写的情况,也就没有同步的问题,也就不用上锁。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询