【Javaプロセス制御学習】構造を選択する

構造を選択してください

単一選択構造の場合

等しい:文字列が等しいかどうかを判断し、文字列を比較します

//equals:判断字符串是否相等
if (s.equals("Hello")) {
    
    
    System.out.println(s);
}
System.out.println("End");
scanner.close();

二重選択構造の場合

if(){ } else { }

if (score >= 60) {
    
    
    System.out.println("成绩及格");
} else {
    
    
    System.out.println("成绩不及格");
}
scanner.close();

多肢選択構造の場合

if(){ } else if { } else if { } else { }



if(score==100){
    
    
    System.out.println("Congratulations,full score!");
}else if(score<100 && score>=90){
    
    
    System.out.println("A级");
}else if(score<90 && score>=80){
    
    
    System.out.println("B级");
}else if(score<80 && score>=70){
    
    
    System.out.println("C级");
}else if(score<70 && score>=60){
    
    
    System.out.println("D级");
}else if(score<60) {
    
    
    System.out.println("不及格");
}else {
    
    
    System.out.println("input error!");
}
scanner.close();

/ * ifステートメントには最大で1つのelseステートメントがあり、elseステートメントは結局elseifステートメントです。

ifステートメントには、他にいくつかのifステートメントを含めることができます。それらはelseステートメントの前になければなりません。

else ifステートメントの1つがtrueとして検出されると、他のelseifおよびelseステートメントはスキップされます。

* /

構造の場合はネスト

  if(score<100){
    
    
        if(score<90){
    
    
            if (score<80){
    
    
                if (score<70){
    
    
                    if (score<60){
    
    
                        System.out.println("不及格");
                    }else{
    
    
                        System.out.println("D级");
                    }
                }else{
    
    
                    System.out.println("C级");
                }
            }else{
    
    
                System.out.println("B级");
            }
        }else{
    
    
            System.out.println("A级");

        }

    }else if(score==100){
    
    
        System.out.println("Congratulations,full score!");
    }else{
    
    
        System.out.println("input error!");
    }
    scanner.close();
}

複数選択構造の切り替え

switch caseステートメントは、変数が一連の値の特定の値に等しいかどうかを判別し、各値はブランチと呼ばれます。

変数は次のとおりです。

  • byte、short、int、またはchar。

  • javaSE 7以降、スイッチは文字列型をサポートします

  • 同時に、ケースラベルは文字列定数またはリテラルである必要があります。

    switch(式){

    ケース値:

    //ステートメント

    ブレーク; //オプション

    ケース値:

    //ステートメント

    ブレーク; //オプション

    //任意の数のcaseステートメントを持つことができます

    デフォルト://オプション

    //ステートメント

    }

//case穿透现象,末尾如果不加break;会从该语句一直执行完
//switch匹配一个具体的值

String code = "200";

switch (code){
    
    
    case"200":
    case"201":
    case"202":
        System.out.println("成功");
        break;
    case"401":
        System.out.println("资源未发现");
        break;
    case "500":
        System.out.println("未知错误");
        break;
    default:
        System.out.println("未知错误");
        break;
        //200,201,202都会输出"成功",利用穿透特性
} 
注意点:

1.通常、ブレークは各ケースの後に追加されます。

2.ケースの後に接続できるのは定数のみです。

3.デフォルトでは、ブレークの後に続く必要があります。後でステートメントを追加しないでください。

おすすめ

転載: blog.csdn.net/weixin_44302662/article/details/114156147