今日は、他のバリエーションについて。
■if 文■
if 文 は3種類ある。
前回、学習したのは 「if - else 構文」というもっとも基本の形。
あとは、「if のみ構文」、「if - else if - else構文」2種類。
一つずつみていく。
基本の形。
true と false で別々の処理を行う。
条件が満たされなかった場合に何もしない。
else の中のブロック内になにも書かない場合に else を省略できる。
package blog;
public class OnlyIf {
public static void main(String[] args) {
System.out.println("あなたの年齢はいくつですか?");
// age(年齢) にキーボードから入力された整数を代入する命令
int age = new java.util.Scanner(System.in).nextInt();
// もし、 age(年齢) が 20 以上ならば
if (age >= 20) {
System.out.println("あなたは、お酒がのめます!");
}
}
}
2つめの実行結果は、条件が満たされなかったので、何も実行されない。
もし、条件が満たされなかった場合、別の条件で評価するときに使う。
1つの if 文で、3つ以上のルートに分岐できる。
package blog;
public class PluralityConditi {
// 猫の年齢で、成長過程かどうかを表示する
public static void main(String[] args) {
// 0~24 の整数をランダムで catAge に代入
int catAge = new java.util.Random().nextInt(25);
System.out.println(catAge + "歳の猫がいます");
// catAge が 0 だったら
if (catAge == 0) {
System.out.println("猫はまだまだ成長期!!");
// catAge が 6 以下だったら
} else if (catAge <= 6) {
System.out.println("猫は、もう おとな だよ!");
// catAge が 16 以下だったら
} else if (catAge <= 16) {
System.out.println("猫は、もう 高齢 だよ!!");
// それ以外なら(17~24)
} else {
System.out.println("長寿!!!");
}
}
}
■switch 文■
if 文をスマートな形で書くための文。
使える条件
・「変数 == 値」「変数 == 変数」のように、右辺と左辺が一致するかを比較する式のとき
・値が整数(byte型,short型,int型)、または文字(char型)のみ。
小数、文字列には使えない。
書く際の注意点
・ switch の直後に書くのは、条件式ではなく、変数名
・ case の横に 値 を書き、後ろに コロン(:)を書く。(;)と間違えないように!!
・ case 以降の末尾に break 文を忘れないように。
(書き忘れると、次の case文へ処理が進む!)
・ default:(デフォルトラベル)は、省略可能。
package blog;
public class Switch {
// 日にちを入力したら、天気予報を出力する
public static void main(String[] args) {
System.out.println("9/19~23までの東京の天気予報です。");
System.out.println("いつの天気が知りたいですか?");
System.out.println("19~23の好きな日を入力してね!");
// day にキーボードから入力された数字を代入
int day = new java.util.Scanner(System.in).nextInt();
switch (day) {
// day が 19 の場合は
case 19:
System.out.println(day + "日は、晴れのち曇りです");
break;
// day が 20 の場合は
case 20:
System.out.println(day + "日は、曇りです");
break;
// day が 21 の場合は
case 21:
System.out.println(day + "日は曇りのち雨です");
break;
// day が 22 の場合は
case 22:
System.out.println(day + "日は曇りです");
break;
// day が 23 の場合は
case 23:
System.out.println(day + "日は曇りのち晴れです");
break;
// それ以外の場合
default:
System.out.println("何も表示されない場合は、入力した数字が間違ってます。");
}
System.out.println("同じ処理を if-else if-else 文で書きます");
// もしも、 day が 19のときは
if (day == 19) {
System.out.println(day + "日は、晴れのち曇りです");
// もしも、 day が 20のときは
} else if (day == 20) {
System.out.println(day + "日は、曇りです");
// もしも、 day が 21のときは
} else if (day == 21) {
System.out.println(day + "日は、曇りです");
// もしも、 day が 22のときは
} else if (day == 22) {
System.out.println(day + "日は、曇りです");
// もしも、 day が 23のときは
} else if (day == 23) {
System.out.println(day + "日は、曇りです");
// そうでなければ
} else {
System.out.println("何も表示されない場合は、入力した数字が間違ってます。");
}
}
}
.png)









0 件のコメント:
コメントを投稿