java之流程控制

目录

流程控制

分支语句

if语句

语法结构

if执行过程

switch语句

语法结构

执行流程 

break与continue

循环结构

前言

for循环

语法结构

执行流程

嵌套for循环

增强for循环

for循环变种

while循环

语法结构

执行流程 

do……while循环

语法结构

执行流程 

流程控制

流程控制的作用:流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块

语句:以分号结尾的一段句子

控制语句的分类:顺序、选择、循环

分支语句

if语句

语法结构

        //单分支
        if(布尔表达式){
            语句;
        }

        //多分支
        if(条件1){
            语句1;
        }else if(条件2){
            语句2;
        }else{
            语句3;
        }

if执行过程

单分支:if对布尔表达式进行判断,如果判断布尔表达式为真,那么就执行里面的语句,否则不执行

多分支:if对条件1进行判断,如果条件1为真,那么就执行语句1,否则找到条件2,如果条件2满足,那么就执行语句2,否则执行语句3

注意:else与if匹配原则(else匹配最近if) 

if (true)
            if (false)
                System.out.println("2");
            else
                System.out.println("1");
//1
        //获得0-1之间的随机数
        double random = Math.random();
        //对浮点数随机数进行四舍五入
        long round = Math.round(random);
        if(round==1){
            System.out.println("行动");
        }else{
            System.out.println("思考");
        }

switch语句

概述:switch case 语句用来判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
当一个case成立,从这个case向后穿透所有case,包括default,直到程序结束或者遇到break程序才结束

语法结构

        switch (表达式){
            case 值1:    语句1;    break;
            case 值2:    语句2;    break;
            case 值3:    语句3;    break;
            case 值4:    语句4;    break;
            ……
            default:    语句n;
        }

执行流程 

注意:

  1. switch语句中的变量类型可以是:byte、short、int、char、string、枚举类型、Integer
  2. switch语句可以用多个case语句
  3. 每个case后面跟一个要和表达式比较的值和“:”,且此值的数据类型必须与switch后面的变量数据类型保持一致
  4. 当变量值与case语句相等时,开始执行case语句后面的内容,执行完会判断此代码是否有break,如果有,则结束执行;若没有则继续向后执行穿过所有case以及default
  5. switch语句可以包含一个default分支,该分支一般写在switch的最后
  6. default不管放在任意位置,如果有case满足要求并且有break关键字,那么default都不会执行
  7. default可以放在任意位置,但是如果没有在最后一行,应加入break关键字防止穿透
public static void main(String[] args) {
        System.out.println("请您输入1-7之间的整数");
        int i = new Scanner(System.in).nextInt();
        switch (i){
            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("清按规则输入");
        }
    }

break与continue

  • break:跳出循环
  • continue:结束当前循环,跳到下一次循环 

循环结构

前言

循环作用:将部分代码重复执行

循环四要素

  1. 条件初始化
  2. 条件判断
  3. 循环体
  4. 条件改变(迭代)

循环分类

  • 当型:while循环、for循环
  • 直到型:do……while循环

注意:三种循环效率一样高,都很慢

for循环

语法结构

    for (初始化;循环条件;更改条件){
        循环体;
    }

注意:

  • 符合循环条件则继续执行,不符合则跳出循环
  • i变量的作用域为离变量最近的{}

执行流程

开始条件——循环条件(真)——循环体——更改条件——循环条件(真)——循环体——……

         //打印1-9
        for(int i=1;i<10;i++){
            System.out.println(i);
        }

嵌套for循环

    for(开始条件;循环条件;更改条件){
        //外层循环
        for(开始条件;循环条件;更改条件){
            循环体;//内层循环
        }
    }

具体流程:首先进入外层循环判断条件,条件为真则将里面的for循环整体执行一遍,更改外层循环条件后再判断条件是否成立,若成立则继续执行内层for循环,执行完更改外层循环条件再判断,如此循环往复

增强for循环

for(数据类型  变量名 : 数组或者集合对象){
		循环体;//变量名即元素
}

用来遍历数组或集合

       int[] a={1,2,3,4,5};
       //遍历a数组
       for (int b:a){
           System.out.println(b);
       }
        //最终遍历出数组的所有元素

for循环变种

    for(;;){
        循环体;
    }

注意:该for循环为死循环,需要配合break一起使用

while循环

语法结构

        while (执行条件){
            循环体;
        }

注意:while循环先判断条件再执行(条件为true则继续执行循环体,不为true则跳出循环) 

执行流程 

        //打印1-9
        int i=1;
        while(i<10){
            System.out.println(i);
            i++;
        }

do……while循环

语法结构

    do{
        循环体;
    }while(执行条件);

do……while循环形式:(先执行,再判断,循环体代码保证最少执行一次)条件为真则继续执行循环体,不为真则跳出循环

执行流程 

       //打印1-9
       int i=1;
       do {
           System.out.println(i);
           i++;
       }while (i<10);

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值