ここでは条件分岐の処理を行うswitch文について解説していきます。
switch文の使い方
switch文の構文は以下のようになります。
switch(式) {
case 値1:
処理;
break;
case 値2:
処理;
break;
default:
処理;
break;
}
最初のswitchのところにある式の値が対応するケースのところの処理を行います
サンプルプログラム
ソースコード
public class Sample05 {
public static void main(String[] args) {
String 成績="優";
switch(成績) {
case "優":
System.out.println("旅行に行く");
break;
case "可":
System.out.println("家でゆっくりする");
break;
default:
System.out.println("もう一度勉強する");
break;
}
}
}
実行結果
C:\Users\Desktop\Java\jdk1.8.0_131\program>javac Sample05.java
C:\Users\Desktop\Java\jdk1.8.0_131\program>java Sample05
旅行に行く
スポンサーリンク
上のプログラムでは成績に入っている文字が「優」だからそれに対応する一番上のcase文の処理が行われています。
ここで「優」でも「可」でもない文字が入力されたときや何も入力されなかった場合、defaultの部分の処理が実行されます。
次のサンプルプログラムで試してみます。
サンプルプログラム(成績を空白に変更)
ソースコード
public class Sample05 {
public static void main(String[] args) {
String 成績="";
switch(成績) {
case "優":
System.out.println("旅行に行く");
break;
case "可":
System.out.println("家でゆっくりする");
break;
default:
System.out.println("もう一度勉強する");
break;
}
}
}
実行結果
C:\Users\Desktop\Java\jdk1.8.0_131\program>javac Sample05.java
C:\Users\Desktop\Java\jdk1.8.0_131\program>java Sample05
もう一度勉強する
switch文を使う際に気をつけなければならない点が一つあります。
それは、各case文の最後には必ずbreak文をつけることです。
もし、break文をつけ忘れたりした場合は以下のようになります。
次のサンプルプログラムで試してみます。
サンプルプログラム(breakをつけない)
ソースコード
public class Sample05 {
public static void main(String[] args) {
String 成績="優";
switch(成績) {
case "優":
System.out.println("旅行に行く");
case "可":
System.out.println("家でゆっくりする");
default:
System.out.println("もう一度勉強する");
}
}
}
実行結果
C:\Users\Desktop\Java\jdk1.8.0_131\program>javac Sample05.java
C:\Users\Desktop\Java\jdk1.8.0_131\program>java Sample05
旅行に行く
家でゆっくりする
もう一度勉強する
このように場合分けを完全に無視して最後まで処理を行ってしまいます。
わざとbreakをつけない場合もありますが、基本的には必ずつけるようにしましょう。
スポンサーリンク