尝试创建一个数组来存储有关一副纸牌的数据。
我想为每张卡保留布尔值。
我想创建一个容量为52的数组,每个索引都初始化为NO(或0)。有没有办法一劳永逸地做到这一点,而不是
[[NSArray alloc] initWithObjects: 0, 0, 0, .... nil];
最佳答案
将@NO
的所有52个实例作为参数设置为initWithObject:
或将其创建为NSMutableArray
并使用循环添加52个对象。
NSMutableArray *array = [NSMutableArray arrayWithCapacity:52];
for (int i = 0; i < 52; i++) {
[array addObject:@NO];
}
顺便说一句-将一组
0
传递给initWithObjects:
完全无效。将@NO
用作BOOL
的NO
值,或将@0
用作数字0
(包装为NSNumber
)。仅使用0
与nil
相同,因此不会添加任何对象。关于ios - NSMutableArray在多个索引处初始化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22313134/