Xcode4.4から利用が出来るようになった、「Modern Objective-C」で
二次元(多次元)配列のおさらいメモです。
■配列の作成方法
普通の Objective-C の場合
NSArray *array = [NSArray arrayWithObjects:@"あ",@"い",@"う",nil];
Modern Objective-C の場合
NSArray *array = @[@"あ",@"い",@"う",nil];
■配列へのアクセス
普通の Objective-C の場合
NSString *string = [array objectAtIndex:0];
Modern Objective-C の場合
NSString *string = array[0];
となります。大分、Javaなどに近い形となりAndroidアプリコンバートが相互的に楽になりますね。
の、応用で多次元配列へアクセスできるかを確認です。
- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. NSMutableArray *maTest1 = [[NSMutableArray alloc]init]; NSMutableArray *maTest2 = [[NSMutableArray alloc]init]; NSMutableArray *maTest3 = [[NSMutableArray alloc]init]; [maTest1 addObject:@"あ"]; [maTest1 addObject:@"い"]; [maTest1 addObject:@"う"]; [maTest2 addObject:@"か"]; [maTest2 addObject:@"き"]; [maTest2 addObject:@"く"]; [maTest3 addObject:@"さ"]; [maTest3 addObject:@"し"]; [maTest3 addObject:@"す"]; NSMutableArray *maAll = [[NSMutableArray alloc]init]; [maAll addObject:maTest1]; [maAll addObject:maTest2]; [maAll addObject:maTest3]; UITextView *tvTest = [[UITextView alloc]initWithFrame:CGRectMake(0, 30, 320, 320)]; [self.view addSubview:tvTest]; tvTest.text = maAll[1][2]; }
代入は、Modern Objective-C使っていませんが簡単にアクセスできました。
めでたし〆