ブランチ構造(1)

分岐構造の場合

  • ifステートメントの最初の形式:if

if(関係式){
ステートメント本体;
}

  • 実装プロセスは、
    最初の関係式を実行し、関係式の結果はbooleanです
    結果は、本体の実装に真のステートメントである場合
    、結果が偽の文は、本体が実行されないの場合は
    、中括弧の外で、最終的に実行される
    コードを示してい

```java
/*1.判断一个字符类型char的变量*/
class Demo1{
	public static void main(String[] args){
		//定义一个字符类型char的变量
		char ch='B';
		/*
		代码结构安排的明明白白的!!!
		*/
		if(ch >= 'A' && ch <= 'Z') {
			System.out.println("这里是一个大写字母!!!");
		}
		System.out.println("大括号之外的语句!!!");
	}
}
  • ifステートメントの2番目の形式:if else

if(関係式){
ステートメント本体1;
} else {
ステートメント本体2;
}

  • 実行フロー
    まず、関係式を判別して、結果が真か偽かを確認し、結果が真の
    場合は文の本文1を
    実行します結果が偽の場合は文の本文2を実行します

ifステートメントの場合、表示されやすい論理エラーがあります。この論理エラーは文法上の問題ではありませんが、エラーを引き起こす可能性が高くなります。次のプログラム

/*错误代码演示*/
public class IfErrorTest{
	public static void main(String[] args){
		int age = 45;
		if (age > 20){
			System.out.println("青年人");
		} else if (age >40 ) {
			System.out.println("中年人");
		} else if (age > 60) {
			System.out.println("老年人");
		}
	}
}
		

上記のプログラムを実行すると、印刷結果は次のとおりであることがわかります。実際には、45歳が中年の人々であると判断されることを望んでいます------
年齢> 20の範囲は年齢> 45より大きいため、ここで論理エラーが発生します。(年齢> 20)、表現は正しく、若者を出力します。

上記のエラーを回避するために、if ... elseステートメントを使用する場合の基本原則があります。常に狭い範囲の条件を優先します。年齢> 60と年齢> 20が2つの条件である場合、年齢> 60の範囲は明らかに小さいため、年齢> 60の場合に対処する必要があります。
正しいコードのデモ

public class IfTest{
	public static void main(String[] args){
		int age = 45;
		if (age > 60){
			System.out.println("老年人");
			
		} else if (age >40 ) {
			System.out.println("中年人");
		} else if (age > 20) {
			System.out.println("青年人");
		}
	}
}
		
  • ifステートメントの2番目の形式:if ... else if…else

if(判定条件1){
実行文1;
} else if(判定条件2){
実行文2
}

} else if(判定条件n){
実行文n;
} else {
実行文n + 1;
}

  • 実装プロセスでは、
    最初の結果を確認するために式1の関係を判断し、真または偽の
    ステートメントが1の実装に真であるならば
    、結果が真か偽見るための式2との間の関係を決定するために継続するfalseの場合
    、それは声明trueの場合は2に実行される
    ことがある場合関係式の判定を続行するにはfalseを返し
    ます... 結果がtrueかfalseかを確認します...
    関係式がtrueでない場合は、ステートメント本文n + 1を実行します。

コードデモ

/*
学生成绩的等级划分:
	90 ~ 100 优秀
	80 ~ 90 良好
	70 ~ 80 中等
	60 ~ 70 及格
	60 以下 不及格
*/
class Demo10 {
	public static void main(String[] args) {
		/*
		成绩考虑存在0.5的情况,需要使用浮点类型数据
		这里采用float类型,这里赋值一个初值
		*/
		float score = 88.0F;
		/* 成绩等级判断 */
		if (score >= 90 && score <= 100) {
			System.out.println("优秀");
		} else if (score >= 80) {
			System.out.println("良好");
		} else if (score >= 70) {
			System.out.println("中等");
		} else if (score >= 60) {
			System.out.println("及格");
		} else {
			System.out.println("不及格");
		} 
	}
}

注:
1. if、else、else ifの後の条件が中かっこで囲まれたコードブロックの場合、コードブロック全体が条件付き実行本体として使用されるか、ステートメントの最初の行がセミコロンで終了し、空のステートメント(空のステートメントはセミコロン)、次にこのステートメントだけを実行本体として使用します。
2. if…elseステートメントを使用するときは、最初に小さいスコープを処理するようにしてください。

元の記事を7件公開しました 賞賛されました0 訪問数103

おすすめ

転載: blog.csdn.net/qq_43634768/article/details/105564598