可能重复:
如何创建多维数组?
我是编程和目标 C 的新手,所以虽然我在这里找到了一些讨论多维数组的问题,但我并没有完全了解我需要做什么才能构建和使用我自己的。
我需要制作一个有 16 行和 3 列的数组。数组需要接受字符串对象。我不知道如何创建、填充或访问其内容。有人愿意为我分解它吗?
可能重复:
如何创建多维数组?
我是编程和目标 C 的新手,所以虽然我在这里找到了一些讨论多维数组的问题,但我并没有完全了解我需要做什么才能构建和使用我自己的。
我需要制作一个有 16 行和 3 列的数组。数组需要接受字符串对象。我不知道如何创建、填充或访问其内容。有人愿意为我分解它吗?
我建议您使用 C 数组,因为NSArray
它不支持多维。您可以像这样声明您描述的数组:
NSString *stringArray[16][3];
设置和访问该数组的任何字符串都非常简单:
stringArray[7][1] = @"Stringstringstring";
NSString *string = stringArray[3][0];
但是,您可以使用NSArray
(或NSMutableArray
),但这会不太优雅:
NSArray *stringArray = [NSArray arrayWithObjects:
[NSMutableArray array],
[NSMutableArray array],
[NSMutableArray array], nil];
这三个NSMutableArray
s 将是您的二维数组的三列。
编辑
使用NSArray
,使用循环来填充它可能更容易:
NSMutableArray *stringArray = [NSMutableArray array];
for (int column = 0; column < 3; column++)
{
NSMutableArray *columnArray = [NSMutableArray array];
for (int row = 0; row < 16; row++)
[columnArray addObject:[NSString stringWithFormat:@"Row %i, column %i", row, column]];
[stringArray addObject:columnArray];
}