Java判断与循环

本文详细介绍了编程中的几种条件控制语句,包括If的三种格式,Switch语句的工作原理,以及不同类型的循环(for,while,do...while)的执行流程和应用场景。If语句用于单个条件判断,Switch适用于多个可能的匹配值。for循环适合已知迭代次数的情况,while和do...while则根据条件判断来决定循环的执行。
摘要由CSDN通过智能技术生成

目录

If语句

If语句的第一种格式

If语句的第二种格式

 If语句的第三种格式

Switch语句

for循环

while循环

for和while的区别即运用情况的不同

do...while循环


If语句

If语句的第一种格式

格式:

if(关系表达式){

        语句体;

}

执行流程:

I、首先计算关系表达式的值

II、如果关系表达式的值为true就执行语句体

III、如果关系表达式的值为false就不执行语句体

IV、继续执行后面的其他语句

If语句的第二种格式

格式:

if(关系表达式){

        语句体1;

} else {

        语句体2;

}

执行流程:

I、首先计算关系表达式的值

II、如果关系表达式的值为true就执行语句体1

III、如果关系表达式的值为false就执行语句体2

IV、继续执行后面的其他语句

 If语句的第三种格式

格式:

if(关系表达式1){

        语句体1;

} else if(关系表达式2){

        语句体2;

}

        ....

  else{

        语句体n+1;

}

执行流程:

I、首先计算关系表达式1的值

II、如果为true就执行语句体1;如果为false就计算关系表达式2的值

III、如果为true就执行语句体2;如果为false就计算关系表达式3的值

IV、......

V、如果所有关系表达式结果都为false,就执行语句体n+1

从上往下依次进行判断,只要有一个判断为真,就执行对应的语句体,如果所有的判断都为假,就执行else的语句体。

Switch语句

switch语句格式

switch(表达式){

        case 值1:

                语句体1;

                break;

        case 值2:

                语句体2;

                break;

        ...

        default:

                语句体n+1;

                break;

}

执行流程:

I、首先计算表达式的值。

II、依次和case后面的值进行比较,如果有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。

III、如果所有的case后面的值和表达式的值都不匹配,就会执行default里面的语句体,然后结束整个switch语句。

说明:

  1. 表达式:(将要匹配的值)取值为byte、short、int、char。JDK5以后可以是枚举,JDK7以后可以是String。
  2. case:后面跟的是要和表达式进行比较的值(被匹配的值
  3. break:表示中断,结束的意思,用来结束switch语句。
  4. default:表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。
  5. case后面的值只能是字面量,不能是变量
  6. case给出的值不允许重复

default的位置和省略

  • 位置:default不一定是写在最下面的,我们可以写在任意位置,只不过习惯会写在最下面
  • 省略:default可以省略,语法不会有问题,但是不建议省略

case穿透现象,由于语句体中没有写break导致的。

执行流程:

首先还是会拿着小括号中表达式的值跟下面每一个case进行匹配。

如果匹配上了,就会执行对应的语句体,如果此时发现了break,那么结束整个switch语句。

如果没有发现break,那么程序会继续下一个case的语句体,一直遇到break或者右大括号为止。

switch在JDK12后的新特性:

switch(表达式){

        case 值1 ->{

                语句体1;

        }

        case 值2 ->{

                语句体2;

        }

        ...

        default ->{

                语句体n+1;

        }

}

或者

switch(表达式){

        case 值1 -> 语句体1;

        case 值2 -> 语句体2;

        ...

        default -> 语句体n+1;

}

switch和if第三种格式各自的使用场景

  • if的第三种格式:一般用于对范围的判断。
  • switch:把有限个数据一一列举出来,让我们任选其一。

for循环

格式:

for(为初始化语句;条件判断语句;条件控制语句){

        循环体语句;

}

for(int i = 1;i <= 10;i++){

        System.out.pritln("循环");

}

执行流程:

1.执行初始化语句

2.执行条件判断语句,看其结果是true还是false

        如果是false,循环结束

        如果是true,执行循环体语句

3.执行条件控制语句

4.回到2.继续执行条件判断语句

  • 初始化语句只执行一次
  • 判断语句为true,循环继续
  • 判断语句为false,循环结束

while循环

格式:

初始化语句;

while(条件判断语句){

        循环体语句;

        条件控制语句;

}

执行流程与for循环相同。

for和while的区别即运用情况的不同

  • for循环:知道循环次数或者循环的范围
  • while循环:不知道循环的次数和范围,只知道循环的结束条件

do...while循环

格式:

初始化语句;

do{

        循环体语句;

        条件控制语句;

}while(条件判断语句);

执行流程:

1.执行初始化语句

2.执行循环体语句

3.执行条件控制语句

4.执行条件判断语句,看其结果是true还是false

        如果是false,循环结束

        如果是true,回到2.继续执行循环体语句

tips.先执行后判断

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值