有什么理由我更喜欢NSArray而不是NSMutableArray吗?

Tha*_*nks 1 iphone collections cocoa-touch

我觉得当我使用NSArray时,我可能会在将来的某个时候限制自己.是否有任何充分的理由选择这种"原始"而不是"复杂"的,这是可变的?

180*_*ION 6

在代码中使用不可变的结构并不是一个约束 - 如果事后证明你需要修改它,你可以改为使用可变的结构.如果你在外部界面中考虑到这一点,它可能更具约束力.不可变的主要优点是你获得了线程安全性,并且更容易将代码概念化 - 如果从等式中取出可变性,则不太关心你.这就是为什么我们有const约束等等 - 如果你不必修改数据,最好事先说出来.