NSArray充满了布尔

Lil*_*ilz 5 objective-c

我正在尝试创建一个bool值的NSArray.我有多少人这样做?

NSArray *array = [[NSArray alloc] init];
array[0] = YES;
Run Code Online (Sandbox Code Playgroud)

这对我不起作用.

谢谢

Mat*_*uch 13

NSArrays不是c-arrays.您无法访问NSArray的值array[foo];
但您可以在objective-C中使用c类型数组而不会出现问题.

Objective-C方法是:

NSMutableArray *array = [[NSMutableArray alloc] init];
[array addObject:[NSNumber numberWithBool:YES]];
//or
[array addObject:@(NO)];
...
BOOL b = [[array objectAtIndex:0] boolValue];
....
[array release];
Run Code Online (Sandbox Code Playgroud)

编辑:clang的新版本,现在标准的objective-c编译器,了解对象下标.当您使用新版本的clang时,您将能够使用array[0] = @YES