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秒