switch文も条件分岐処理を行います。文法は次のようになっています。
switch ( expression ) { case n: statements case m: statements ... default: statements }
「expression」には整数型(char, byte, short, int やそのラッパークラス)が入ります。条件にマッチするケースがない場合には default の 「statements」 が実行されます。
switch文は本書では使用しないので、例を示す程度にとどめておきます。
Sample13.java
01|import java.util.Calendar; 02| 03|public class Sample13{ 04| public static void main( String[] args){ 05| // カレンダークラスのオブジェクトを得る 06| Calendar c = Calendar.getInstance(); 07| 08| // 時間を得る 09| int hour = c.get( Calendar.HOUR_OF_DAY); 10| int minute = c.get( Calendar.MINUTE); 11| 12| // 時間を出力する 13| System.out.println( hour + "時 " + minute + "分"); 14| 15| switch( hour){ 16| case 0: case 1: case 2: case 3: 17| case 4: case 5: case 6: 18| System.out.println("就寝中なり"); 19| break; 20| case 7: case 8: 21| System.out.println("おはよー"); 22| break; 23| case 9: case 10: case 11: 24| System.out.println("午前就業中"); 25| break; 26| case 12: 27| System.out.println("お昼休み"); 28| break; 29| case 13: case 14: case 15: case 16: 30| System.out.println("午後就業中"); 31| break; 32| default: 33| System.out.println("アフター5"); 34| break; 35| } 36| } 37|}
このプログラムでは現在時刻を得て、それに対応したメッセージを出力しています。
時間による条件分岐に switch を使っています。case の 「statements」 の最後に break という命令文が入っています。これがない場合、その下の case 文も続けて実行されてしまうので注意してください。
switch 文は if-else を用いて書き換えることができます。Sample13.java を if-else を用いて書き換えてみると、良い練習になるでしょう。
最終更新時間:2009年04月25日 17時25分41秒