Sam*_*Sam 3 objective-c multidimensional-array
我想在我的应用程序中使用可变大小的多维数组来保存数据.我想要使用的数据结构如下所示,每行中的第一个元素后跟相应的多个值.
array = { {a, a_val1, a_val2, a_val3}.
{b, b_val1},
{c, c_val1, c_val2, c_val3, c_val4, c_val5}
}
Run Code Online (Sandbox Code Playgroud)
知道如何在objective-c中实现吗?
big*_*gkm 14
像这样使用NSMutableArray
NSMutableArray *curRow; /* use to access the row while loading with objects */
NSMutableArray *array = [[NSMutableArray alloc] init]; /* your main multidim array */
curRow = [NSMutableArray array];
[curRow addObject:/* what you want here */];
[curRow addObject:/* what you want here */];
[curRow addObject:/* what you want here */];
[array addObject:curRow]; /* first row is added */
/* rinse and repeat */
curRow = [NSMutableArray array];
[curRow addObject:/* what you want here */];
[curRow addObject:/* what you want here */];
[curRow addObject:/* what you want here */];
[array addObject:curRow];
Run Code Online (Sandbox Code Playgroud)
以下是您理解的例子......
NSMutableArray * multiArray = [[NSMutableArray alloc] initWithCapacity:5];
[multiArray addObject:[NSArray arrayWithObjects:a,a_val1,a_val2]];
[multiArray addObject:[NSArray arrayWithObjects:a,a_val1,a_val2,a_val3,a_val4]];
[multiArray addObject:[NSArray arrayWithObjects:a,a_val1,a_val5]];
[multiArray addObject:[NSArray arrayWithObjects:a,a_val1,a_val2,a_val3,a_val4,a_val5,a_val6]];
Run Code Online (Sandbox Code Playgroud)
并且不要忘记发布到multiArray 阵列因为我们拥有alloced它...