Objective-C(に限りませんけど)では、条件を書く手段がいくつかある。一番よく使うのはおそらくif
文。例えば
int a = 10;
if(a < 10) {
NSLog(@"a is small");
} else {
NSLog(@"a is big");
}
これだけで何でもできるはできるが、
if(a == 1) {
NSLog(@"a is 1");
} else if(a == 2) {
NSLog(@"a is 2");
} else if(a == 3) {
NSLog(@"a is 3");
} else {
NSLog(@"a is more than 3");
}
みたいな書き方はあんまり綺麗ではないし、実際もう1つ問題があるけれど、それについてはまた今度で。気になる人は「列挙型」(enum)について調べると良い。
それを解決するには、switch
文を使うと綺麗に書ける。以上の例を書き換えると、
switch(a) {
case 1:
NSLog(@"a is 1");
break;
case 2:
NSLog(@"a is 2");
break;
case 3:
NSLog(@"a is 3");
break;
default:
NSLog(@"a is more than 3");
break;
という感じになる。