【Java】条件分岐と繰り返し処理について
条件分岐:if文
Java言語にもif文という構文があります。「もしも〜ならば」という文章をプログラムで表現することができます。
public class Sample1 { public static void main(String[] args) { //条件分岐 System.out.println("--------"); //変数の型を宣言する boolean f1 = true; if (f1){ //条件が入る System.out.println("ifのテスト"); } int f2 = 30; int f3 = 20; if(f2 < f3){ System.out.println("f2の方が小さい"); }else{ System.out.println("f3の方が小さい"); } } }
結果表示 -------- ifのテスト f3の方が小さい
<例題1>bmi値が40の場合、肥満度はどの範囲になるか?
18.5未満 「痩せ」、25.0未満 「普通」、30.0未満 「肥満」、それ以上「高肥満度」
public class Sample2 { public static void main(String[] args) { //bmi値が40の場合、肥満度はどの範囲になるか? double bmi = 40.0; /* * bmi = 18.5未満 「痩せ」 * bmi = 25.0未満 「普通」 * bmi = 30.0未満 「肥満」 * bmi = それ以上「高肥満度」 */ //上から順番に処理される if(bmi < 18.5){ System.out.println("痩せ"); }else if(bmi < 25.0){ System.out.println("普通"); }else if(bmi < 30.0){ System.out.println("肥満"); }else{ System.out.println("高肥満度"); } } }
結果表示 -------- 高肥満度
<例題2>if else文と数学関数Math.random( )を使って、おみくじが引けるJavaを記述します。
public class Sample3 { public static void main(String[] args) { //おみくじ System.out.println("--------"); double g1 = Math.random(); /* * g = 0.4のように任意の数字代入して確認。 */ if(g1 < 0.1){ System.out.println("大吉"); }else if(g1 < 0.5){ System.out.println("吉"); }else if(g1 < 0.8){ System.out.println("小吉"); }else if(g1 <0.99){ System.out.println("凶"); }else{ System.out.println("大凶"); } } }
結果表示 -------- 小吉
条件分岐:switch文
switch文は、複数のcaseという選択肢から式の値に合うものを選択して処理を実行します。式の値がどれにも当てはまらない場合はdefaultに進みます。各選択肢の最後にはbreak文を記述し、選択した処理のみを行うようにします。
public class Sample4 { public static void main(String[] args) { //switch文 System.out.println("--------"); int h1 = 2; switch(h1){ case 1: System.out.println("1月"); break; //break文:処理を終了 case 2: System.out.println("2月"); break; case 3: System.out.println("3月"); break; default: //:コロンで閉める System.out.println("それ以外"); } } }
結果表示 -------- 2月
<例題3>if else文で宣言された変数に対して1月から5月までを表示させます。
public class Sample5 { public static void main(String[] args) { int h2 = 5; if(h2 == 1){ // ==に注意する!! System.out.println("1月"); }else if(h2 == 2){ System.out.println("2月"); }else if(h2 == 3){ System.out.println("3月"); }else if(h2 == 4){ System.out.println("4月"); }else if(h2 == 5){ System.out.println("5月"); }else{ System.out.println("それ以外"); } } }
結果表示 -------- 5月
繰り返し処理:for文
for文は、繰り返し処理を効率よく行う制御文です。
public class Sample6 { public static void main(String[] args) { //for文 for(int i = 0;i < 10;i++){ System.out.println(i); } System.out.println("--------"); //1~20までの数字を表示 for(int i = 1;i <= 20;i++){ System.out.println(i); } System.out.println("--------"); //1~30までの数字を表示(奇数のみ) for(int i = 1;i <= 30;i++){ if(i%2 != 0){ //!:否定を使う System.out.println(i); } } } }