iOS 为什么不用NSMutableArray取代NSArray
1个回答
2016-11-20 · 学高端技术就来八维教育
关注
展开全部
NSArray 和 NSMutableArray 的底层结构应该是差不多的。区别从名字就可以看到,NSArray 不可变,而 NSMutableArray 可变。NSArray 因为不可变,实现起来会更简单些
不可变结构附带有如下好处:
功能单一,实现起来会更简单。
没有修改的数据的接口,就从根源防止了数据无意中被修改。
因为不会被修改,更容易被缓存复用。
因为不可变,只读,多线程访问的时候,也不会发生一边读一边写的情况,也就没有同步的问题,也就不用上锁。
不可变结构附带有如下好处:
功能单一,实现起来会更简单。
没有修改的数据的接口,就从根源防止了数据无意中被修改。
因为不会被修改,更容易被缓存复用。
因为不可变,只读,多线程访问的时候,也不会发生一边读一边写的情况,也就没有同步的问题,也就不用上锁。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询