2014-09-02 28 views
0

我不确定,这是宣布2D数组的最佳做法吗?如果没有,请给我建议可能的解决方案。谢谢。如何在Objective-C中声明数组内的数组?

@interface RAGamePlayScene() 
@property (strong)NSArray *twoSetArray; 
@end 

@implementation RAGamePlayScene 
-(id)initWithSize:(CGSize)size { 
[email protected][@[@1, @8, @12],@[@8,@12,@3],@[@1,@7,@11],@[@7,@11,@5],@[@5,@10,@9],@[@10,@9,@3],@[@6,@7,@8],@[@7,@8,@2],@[@6,@11,@10],@[@11,@10,@4],@[@2,@12,@9],@[@12,@9,@4]]; 
} 
@end 
+0

这些数字是重要的还是只是占位符?另外,确保声明你的变量(非原子)。 – Kevin 2014-09-02 22:34:33

+0

这些数字是固定的,不能更改。谢谢。 – Rishav 2014-09-02 22:38:14

+2

为了便于阅读,我会将每个子数组放在一个单独的行上,但否则就没有问题。 – user3386109 2014-09-02 22:40:46

回答

0

如果目标是干净的(-ish)接口,你很可能有类似的东西去:

@interface TwoDimensionalArray : NSObject 

- (instancetype)initWithRows:(NSArray *)rows; 

- (NSArray *)objectAtIndexedSubscript:(NSUInteger)index; 

@end 

你必须对行长度相等的必要检查在初始化,这就是它。元素访问如此简单:array[1][2]