首页 > 为什么oc把NSArray设计成不可变的?

为什么oc把NSArray设计成不可变的?

语言中类似这样的有很多 java中的string 我想问一下 为什么一开始设计成这样呢?


字符串设计成不可变的主要是为了常量池优化和hashCode应用,如果字符串可变,hashCode就基本没有用武之地了

NSArray,copy的时候只需要retain就可以了,不会创建一个新的对象, 其实也是常量池的思想
另外,相对地,有可变的 NSMutableArray

【热门文章】
【热门文章】