【发布时间】:2011-07-24 17:11:33
【问题描述】:
我想构建一个字符串数组,每次都可以指向不同的字符串。我看到我可以使用NSArray 和NSMutableArray。
它们有什么区别?
【问题讨论】:
标签: iphone objective-c nsmutablearray nsarray
我想构建一个字符串数组,每次都可以指向不同的字符串。我看到我可以使用NSArray 和NSMutableArray。
它们有什么区别?
【问题讨论】:
标签: iphone objective-c nsmutablearray nsarray
直接来自苹果:
主要区别:
NSArray 是不可变的,这意味着它一旦创建就无法更改,并且通常比可变的对应物更快并且占用的内存更少。
NSMutableArray 创建后可以更改。
除此之外还有更多不同之处,但文档比我做得更好。我还建议在 iTunes 上观看来自斯坦福的免费 IOS 开发讲座。它们深入探讨了不同的数据结构以及如何更深入地使用它们。
【讨论】:
NSMutableArray 可以修改,而 NSArray 在初始化后不能修改(即 addObjects、remove 等) 如果您需要在初始化后添加字符串,请使用可变数组
【讨论】:
使用NSMutableArray,您可以动态添加和删除对象。
请参阅:
difference-b-w-nsarray-and-nsmutablearray
您可以通过以下方式对其进行初始化:
NSMutableArray *ma = [[NSMutableArray alloc]init];
[ma addObject:myObject];
【讨论】: