Java:流程控制语句

文章目录

一、顺序结构

顺序结构语句是Java程序默认的执行流程,按照代码的先后顺序,从上到下依次执行。


二、分支结构

2.1 if

  • 首先计算关系表达式的值
  • 为true,则执行语句体1
  • 为false,则执行其他语句
java 复制代码
public class Main {
    public static void main(String[] args) {
        /*
            if (关系表达式) {
                语句体 1
            }
         */
        int a = 1;
        if (a > 2) {
            System.out.println("1 大于 2");
        }
        System.out.println("不符合规则");
    }
}
  1. 第二种格式
  • 首先计算关系表达式的值
  • 为true,则执行语句体1
  • 为false,则执行语句体2
java 复制代码
public class Main {
    public static void main(String[] args) {
        /*
            if (关系表达式) {
                语句体 1
            }  else {
                语句体 2
            }
         */
        if (1 > 2) {
            System.out.println("1 大于 2");
        }  else {
            System.out.println("当条件不符合,就执行这里");
        }
    }
}
  1. 第三种格式
  • 首先计算关系表达式 1 的值
  • 为true,则执行语句体1,为false,则计算关系表达式 2的值
  • 为true,则执行语句体2,为false,则计算关系表达式 3的值
  • 。。。。。。
  • 如果关系表达式的结果都为false,则执行语句体 3
java 复制代码
public class Main {
    public static void main(String[] args) {
        /*
            if (关系表达式 1) {
                语句体 1
            } else if (关系表达式 2) {
                语句体 2
            } else {
                语句体 3
            }
         */
        int a = 10;
        if (a > 15) {
            System.out.println("a 大于 15");
        } else if (a > 5) {
            System.out.println("a 大于 5");
        }  else {
            System.out.println("当条件都不符合,就执行这里");
        }
    }
}

2.2 switch

格式说明 含义
表达式 将要匹配的值
case 被匹配的值
break 结束switch语句
default 当所有的情况都不匹配,就执行这里

注意:case 不能是变量、不许重复

java 复制代码
public class Main {
    public static void main(String[] args) {
        /*
            switch(表达式) {
                case 值1:
                    语句体1;
                    break;
                case 值2:
                    语句体2;
                    break;
                ...
                default:
                    语句体 n + 1;
                    break;     
            }
         */
        int day = 2;

        switch (day) {
            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("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期天");
                break;
            default:
                System.out.println("都不符合,执行这里");
        } // 星期二
    }
}

三、循环结构

3.1 for

(1) 执行初始化语句

(2) 执行条件判断语句

为true,执行循环体语句

为false,循环结束

(3) 执行条件控制语句

(4) 回到第 (2) 步重复

java 复制代码
public class Main {
    public static void main(String[] args) {
        for (int i = 1; i <= 10; i++) {
            System.out.println(i);
        }
    }
}

3.2 while

(1) 条件初始化

(2)执行条件判断语句,为true,则继续往下执行,为false,则中断执行

(3)条件控制语句,必须使值满足条件判断,否则会一直往下执行,进入死循环

先判断,后执行

java 复制代码
public class Main {
    public static void main(String[] args) {
        int num = 0;
        while (num < 10) {
            num +=1;
            System.out.println(num);
        }
    }
}

3.3 do...while

(1) 条件初始化

(2)执行条件判断语句,为true,则继续往下执行,为false,则中断执行

(3)条件控制语句,必须使值满足条件判断,否则会一直往下执行,进入死循环

先执行,后判断

java 复制代码
public class Main {
    public static void main(String[] args) {
        int num = 0;
        do {
            num += 1;
            System.out.println(num);
        }while (num < 10);
    }
}

四、流程控制

4.1 break

终止该层循环 ,跳出循环,不再执行下面的循环。

4.2 continue

跳过该层循环,继续下一层循环。


五、结语

这篇博客大概2400字左右,希望能对你有所帮助,如果有什么问题欢迎留言,我这边有时间就会回。

如果觉得我写的不错的小伙伴,可以帮我点个赞,收藏一下,如果还有什么希望我出的教程可以留言,我会参考。

相关推荐
逊嘘12 分钟前
【Java语言】抽象类与接口
java·开发语言·jvm
Half-up15 分钟前
C语言心型代码解析
c语言·开发语言
帅得不敢出门17 分钟前
Gradle命令编译Android Studio工程项目并签名
android·ide·android studio·gradlew
morris13119 分钟前
【SpringBoot】Xss的常见攻击方式与防御手段
java·spring boot·xss·csp
Source.Liu36 分钟前
【用Rust写CAD】第二章 第四节 函数
开发语言·rust
monkey_meng36 分钟前
【Rust中的迭代器】
开发语言·后端·rust
余衫马39 分钟前
Rust-Trait 特征编程
开发语言·后端·rust
monkey_meng43 分钟前
【Rust中多线程同步机制】
开发语言·redis·后端·rust
七星静香44 分钟前
laravel chunkById 分块查询 使用时的问题
java·前端·laravel
Jacob程序员1 小时前
java导出word文件(手绘)
java·开发语言·word