hachinoBlog

hachinobuのエンジニアライフ

今更ながらNSDictionary,NSArrayへの新しいアクセス方法

今更感満載ですが、NSDictionaryとNSArrayのモダン記法です。
以前の書き方は

//NSDictionary
NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:@"hachinobu", @"name", [NSNumber numberWithInt:28], @"age", nil];
NSString *name = [dic valueForKey:@"name"];
NSString *age = [dic valueForKey:@"age"];

//NSArray
NSArray *array = [NSArray arrayWithObjects:@"hachi", @"nobu", nil];
NSString *hachi = [array objectAtIndex:0];

新しい書き方

//NSDictionary
NSDictionary *dic = @{@"name": @"hachinobu", @"age": @(28)};
NSString *name = dic[@"name"];
NSNumber *age = dic[@"age"];

//NSArray
NSArray *array = @[@"hachi", @"nobu"];

2013/10/29追記
モダン記法によるMutableの追記方法

NSMutableArray *array = [@[] mutableCopy];
array[0] = @"first";
array[1] = @"second";

NSMutableDictionary dict = [@{} mutableCopy];
dict[@"a"] = @"A";
dict[@"b"] = @"B";