美人すぎない化粧品販売員がアプリ開発を目指す

Javaの構文、オブジェクト指向、APIなど、プログラミング初心者の私がアプリ開発までに理解したことをまとめたブログ

switch文とは?

switch文とは?

 複数の選択肢を用意し一致する箇所の処理を実行する構文

 (式と一致するラベルの位置へ処理を移す)

例えば、ある出来事について満足ーやや満足ー普通ーやや不満ー不満かどうかを調べたい

とき

など選択肢が複数あるが、当てはまるのは1つだけという時に使うと便利

 

〈構文〉

switch(式)//式は変数宣言により式の値が代入された変数か計算式

    →いずれの場合も式の結果は整数でなければならない

   理由は式の結果(数値)をどこのラベル(数値)と一緒かを判断する材料にしたいから

 

ラベル case 定数:(これは実数値 ex.1,2,3)

              実行する文;

          →式の結果の数値と一緒のラベルの位置へ移動した後は、

    swith文の終わる最後まで順にceseの中に記述された実行式が実行されていく

    ただこれでは、「やや満足」とだけ出力したいのに、

    一度その地点にいくと、続けて

   「やや満足 普通 やや不満 不満」と出力されていく

 

➡︎そこで本来実行したい文が終わる直後に文から飛び出すためにbreakと記述する

           break

 これを書くことで本来出力したかった「やや満足」が出力されると自動で終了する     

 

ex.

int num=2;

swith(num){

  case 1:

     System.out.println("満足");

        break;

 case 2:

     System.out.println("やや満足");

        break;

 case 3:

     System.out.println("普通");

        break;

 case 4:

     System.out.println("やや不満");

       break; 

case 5:

      System.out.println("不満");

}

 

この場合、num=2なので、

ラベルcase 2の位置へ移動し、「やや満足」と出力された後、break文で飛び出す

 

複数のラベルを選択したい時

   複数のラベルを続けて記述する

ex. swith(num){

               case 1:

               case 2:

    実行文①

→この場合はnumに代入された値が1または2の場合に実行文①が実行される