我想在iphone sdk中创建meachanical单位转换计算器,所以我必须执行一对多类型的操作。例如,长度是类别,并且长度类别中有多种类型的单位,例如ex.meter,kilometer等。现在我必须创建多个组合,因为我正在使用if-else条件,现在可以工作但是可行这会增加我的代码很多,因为因为有近30个类别,每个类别都有多个单位。所以有任何其他方法可以简单地解决这个问题,因为在我的代码中编写这么多if else组合太忙了。为此,我认为可能使用二维数组。所以请提供二维数组的代码来执行此计算操作。
答案 0 :(得分:1)
只需将NSArray对象放入NSArray中即可获得二维数组。 (非常像任何其他语言。)
NSMutableArray * myTwoDimensionalArray = [NSMutableArray alloc]init];
[myTwoDimensionalArray addObject:[NSArray arrayWithObjects:@"value 0/0", @"value 0/1",nil]];
[myTwoDimensionalArray addObject:[NSArray arrayWithObjects:@"value 1/0", @"value 1/1",nil]];
// to get value at [i][j]
[[myTwoDimensionalArray objectAtIndex:i] objectAtIndex:j];
答案 1 :(得分:1)
正如jules建议你可以使用NSMutableArray哟创建你的二维数组。另一种方法是在单个NSMUtableArray中拥有mXn
个对象。创建一个数组并按顺序添加对象。通过访问[i][j]
处的对象来访问(i*n)+j
元素。