创建一个空的NSArray

时间:2012-05-16 16:21:38

标签: arrays nsmutablearray initialization nsarray declaration

在C中的

我可以简单地声明一个这样的数组:

int array[500]; 

声明一个大小为500的数组,然后可以在以后填充。是否有可能在NSArray中做同样的事情?我理解NSMutableArray有一个arrayWithCapacity类方法来“创建”和空数组(或至少声明稍后要填充的数组)。有没有办法为NSArray做类似的事情,因为我知道我希望稍后在“for”循环中填充内容的数组的确切大小。

由于

1 个答案:

答案 0 :(得分:1)

从技术上讲,int array[500];不会创建一个空数组 - 它会创建一个充满零的数组。由于NSArray是不可变的,因此如果您希望以后能够填充NSMutableArray,则需要使用NSMutableArray *array = [NSMutableArray arrayWithCapacity:500]; for (int i = 0 ; i != 500 ; i++) { [array addObject:@(i)]; }

您可以创建具有特定容量的数组,然后将对象放入其中,如下所示:

NSMutableArray

由于NSArrayNSMutableArray*,您可以在方法NSArray*中创建它,然后将其作为{{1}}返回给调用者。