我的代码如下:
NSString *str1 = @"Name";
NSString *str2 = @"Age";
NSArray *array = [[NSArray alloc] initWithObjects: str1, str2 count:2];
然而,当我构建&运行我得到一个异常抛出,说:count
中的'c'之前的预期':'。
这是为什么?我尝试输入':'虽然我知道语法不正确然后Xcode要求我在count
之前用']'关闭。
答案 0 :(得分:4)
initWithObjects:count:
用于C数组。在您的情况下,您最后要使用带有initWithObjects:
参数的nil
:
NSString *str1 = @"Name";
NSString *str2 = @"Age";
NSArray *array = [[NSArray alloc] initWithObjects: str1, str2, nil];
答案 1 :(得分:3)
如果您刚开始学习Objective-C,只需使用最近介绍的最方便的方法:
NSArray* array= @[ str1, str2] ;
有关详细信息,请参阅What are the details of "Objective-C Literals" mentioned in the Xcode 4.4 release notes?