面白きことは良きことなり

拙く未熟なiOSエンジニアの備忘録と戯言

NSArrayの書き方で変わる動作

地味に引っかかった初歩的部分。
Objective-Cでモダンな書き方をする場合、下記のことに気をつける必要がある。

NSString *a = @”objectA”;
NSString *b = @”objectB”;
NSString *c = nil; 

// case1
NSArray *array1 = [a, b, c];
// -> NSArrayにnilは入れられないのでクラッシュする

// case2
NSArray *array2 = [NSArray arrayWithObjects:a, b, c, nil];
// -> cでnilが入り終端文字として認識されるのでa,bしか持たない配列array2が出来上がる