1

我来自 android 背景,我刚开始在 iPhone 上工作,我想在 iPhone 中执行此操作,就像在 Android 中一样。

ArrayList<String> aa = new ArrayList<String>();

public void fillArray(String s)
{
    aa.add(s);
}
4

1 回答 1

3

正如Binyamin Sharet建议的那样,您必须使用NSMutableArray. 此类允许您创建动态数组。您可以执行添加或删除。相反NSArray是它的不可变版本。您不能将对象添加或删除NSArray一次创建。

相同的区别可以应用于NSDictionaryNSMutableDictionary(和其他)。

这里举一个简单的例子。

NSMutableArray* arr = [[NSMutableArray alloc] init];
[arr addObject:@"first string"];
[arr addObject:@"second string"];

NSMutableArray(同样可以应用于其他类)的一个重要方面是内存管理。当您将对象NSMutableArray添加到 a 时,它会保留添加到其中的对象。因此,如果您使用 ARC,则必须处理这方面的问题。

NSMutableArray* arr = [[NSMutableArray alloc] init];
id obj = [[NSObject alloc] init]; // a general object
[arr addObject:obj];

[obj release];

有关更多信息,我建议您阅读有关NSMutableArray 类参考的信息。

希望能帮助到你。

于 2012-05-19T13:43:51.350 回答