有谁知道如何在iOS / Objective-c中创建一个常量2d数组?在java中它将是
public static final String MY_2D_ARRAY = {{"dog","cat","sheep"},{"bread","end","van"}};
以下内容对我不起作用
extern NSString * const MY_2D_ARRAY[][]; //etc
答案 0 :(得分:0)
在Objective-C中创建数组,您需要使用NSArray(Immutable)
。或者NSMutableArray(mutable)
。
NSArray *arr = @[@[@"a", @"b"], @[@"c", @"d"]];
答案 1 :(得分:0)
这里&#39>
NSArray *arr = @[
@[@"dog", @"cat", @"sheep"],
@[@"bread", @"end", @"van"],
...
];
答案 2 :(得分:0)
您无法创建常量NSArray,因为作为任何Objective-C对象(除了NSString),它是在运行时创建的,您不能使用表达式来初始化它。您应该考虑使用其他方法,也许使用单例。
答案 3 :(得分:-1)
因为在ios中你不能像你所示那样创建常量数组,但你可以将它用作替代
// constants.h
+ (NSArray*) MY_2D_ARRAY;
// constants.m
+ (NSArray*) MY_2D_ARRAY{
static NSArray* arr = nil;
if (arr == nil) {
arr = @[@"a",@"b"]];
}
return arr;
}
// you can Use it where you required
[constants MY_2D_ARRAY];
如果这对您有帮助,那么您可以接受它作为解决方案。