//Sample38_41.java class Sample38_41{ public static void main(String[] args){ int x = 1; switch( x ){ case 0: System.out.println("0です。"); break; case 1: System.out.println("1です。"); break; case 2: System.out.println("2です。"); break; default: System.out.println("一致しません。"); } } }
>javac Sample38_41.java >java Sample38_41 1です。
//Sample38_42.java class Sample38_42{ public static void main(String[] args){ int x = 1; switch( x ){ case 0: System.out.println("0です。"); case 1: System.out.println("1です。"); case 2: System.out.println("2です。"); break; default: System.out.println("一致しません。"); } } }
>javac Sample38_42.java >java Sample38_42 1です。 2です。
int x = 1;
switch( x ){
case 0:
System.out.println("0です。");
case 1:
System.out.println("1です。");
case 2:
System.out.println("2です。");
break;
/*ここには書けません。*/
default:
System.out.println("一致しません。");
}
//Sample38_43.java class Sample38_43{ public static void main(String[] args){ double sei = Math.random() * 7; int x = (int)sei;//0~6 のランダム System.out.println("x は、" + x); switch( x ){ case 0: case 5: System.out.print("メガ"); case 1: case 2: case 3: case 4: System.out.println("進化です!"); break; default: System.out.println("進化しません。"); } System.out.println("---------------"); } }
>javac Sample38_43.java >java Sample38_43 x は、6 進化しません。 --------------- >java Sample38_43 x は、2 進化です! --------------- >java Sample38_43 x は、0 メガ進化です! --------------- >
//Sample38_44.java
class Sample38_44{
public static void main(String[] args){
char ch = 'A';
switch( ch ){
case 'A':
System.out.println("it's A");
break;
case 'B':
System.out.println("it's B");
break;
case 'C':
System.out.println("it's C");
break;
default:
System.out.println("Other than");
}
}
}
>javac Sample38_44.java >java Sample38_44 it's A
たいていの場合、if文でもswitch文でも書けるでしょう。 しいていえばこんな感じです。 if文 文法的に読みやすい。 分岐が多くなると、急に読みにくくなる。 関係演算との相性がいい。 switch文 分岐が多くてもきれいに書ける。 整数と相性がいい。 出来るプログラマになった気分になる。