2020-12-02 Java基础_循环

目录:

键盘录入

概述:给我们提供了一个用户交互的功能,当我们有一个变量并且不确定它的值是多少,在使用这个程序时再去确定,这是可以使用键盘录入。

语法结构:

1、导包 import java.util.Scanner

2、创建键盘录入的对象  Scanner 对象名 = new Scanner(System.in);

3、需要一个nextInt()方法去接受录入的整数内容

注意事项:1、导包的位置在类的声明上面;2、nextInt返回的类型

分支结构

概述:当程序执行到某个地方,或者是某种状态时,出现了不同的情况,我们需要根据这些情况让程序发生分支,我们需要将所有情况都列举出来。再根据情况来决定程序的走向,那么这种情况就需要用到分支结构。

分类:

if 如果

if...

if...else...

if...else if...else if...else...

Switch:

if语句:

if语句的语法结构一:

语法:

if(表达式){

               语句体 1;

}

说明:1、if就是关键字;2、表达式结果是boolean类型;3、语句体就是我们需要执行的功能代码

执行流程:1、首先判断表达式的值是否成立;2、如果成立执行语句体1的内容;3、如果不成立if语句就结束了

if语句的语法二:

if(表达式1){

               语句体1;

}else{

              语句体2;

}

说明:表达式1必须是Boolean类型的值

执行流程:1、判断表达式1的值是否成立;2、如果表达式1的值成立执行if后面的语句体1;3、如果不成立执行else后面的语句体2;

if语句的语法三:

if(表达式1){

语句体1;

}else if(表达式2){

语句体2;

}......

else if(表达式n){

语句体n;

}else{

语句体n+1;

}

说明:所有的表达式都得是布尔类型的结果

if语句的注意事项:

1、表达式相关:表达式的结果的类型必须是布尔类型

2、语句体相关:如果语句体只有一行代码可以将{}省略,建议不要省略

3、执行逻辑相关:表达式如果成立,不会执行其他的语句体

Switch

语法结构:

switch(表达式1){

case 表达式2:

语句体1;

break;

case 表达式3:

语句体2;

break;

......

Default:

语句体n;

break

执行流程:1、计算表达式1的结果;2、拿表达式1中的结果跟case后面的表达式进行比较;3、如果有相等的情况就执行case后面的表达式;4、执行之后这个switch就结束了;5、如果都没有比较成功就执行default里面的语句。

switch的细节:

1、switch:选择;2、case:情况;3、break:破坏;4、default:默认的,缺省的

case:后面必须要跟常量;

switch后面的表达式必须是一个变量;

break:结束整个switch语句,当case后面没有break,case会进行向下穿透;

default:就是所有的case后的表达式都没有匹配成功,就执行default后的语句;所有的匹配全部完成之后default才会去执行,可以写到任意的位置,建议写到switch结构的最后(如果都不匹配,且没有break,则先执行default,然后执行其下面的所有case)

switch结束的情况:遇到break立即结束;遇到右大括号也立即结束

练习:有关于向下穿透:判断季节

循环结构

概述:当代码中需要重复执行一段内容,我们就可以去使用循环结构来解决这样的问题

分类:for;while;do...while;foreach

for循环

语法结构:for(初始化表达式1;条件表达式2;更新表达式3){

循环体4;

}

说明:初始化表达式相当于循环开始的位置 定义一个变量并且给他一个初始值;条件表达式限定了循环结束的条件,相当于循环的终点;更新表达式限定了循环执行的次数,如果步长较大执行的循环次数较小,反之反之;循环体:需要被重复的功能代码

执行流程:1-2-4-3-2-4-3-2......

1、执行初始化表达式,只执行一次;2、判断表达式是否成立;3、如果成立执行循环体中的内容;4、执行完毕执行更新表达式;5、最后返回第二步,依次进行循环,如果条件不成立就结束循环

循环嵌套:1-2-4-5-7-6-5-7.。。。3-2-4-5-7.。。。

概述:有一个循环不能解决需求,还需要在这个循坏的外层加上循环,这就是循环的嵌套。

语法结构:

for(初始化表达式1;条件表达式2;更新表达式3){

for(初始化表达式4;条件表达式5;更新表达式6){

循环体7;

}

}

执行流程:1、外层循环的初始化表达式,只执行一次;2、执行外层循环的条件判断;3、如果成立 执行内层的初始化表达式;4、执行内存的条件判断;5、成立执行循环体;6、执行完毕执行内存的更新表达式;7、执行外层的更新表达式;8、再去外层进行判断;9、

循环体执行次数=i*j;

while循环

结构:

初始化表达式;         ①

while(条件表达式){    ②

循环体;                    ③

更新表达式;             ④

}

执行流程:1、执行初始化表达式,执行一次;2、执行判断表达式,如果判读成立;3、执行循环体的内容;4、执行更新表达式

死循环

概述:循环没有结束的条件,循环就会一直执行。

分类:

1、for循环的死循环

for(;;){

循环体;

}

2、while循环的死循环:

while(true){

循环体;

}

注意事项:1、死循环写成后下面的代码就没有意义,直接报错;2、我们当前写的这个死循环并不是真正意义上的死循环,应用场景服务器相关的内容

循环的跳转语句:

当循环没有结束条件时,我们仍然可以通过循环的某些跳转语句来控制循环或结束循环

分类:

break:直接结束循环;

continue:跳过当次的循环

return:也可以直接结束1循环,结束方法的关键字

System.exit(0)直接将jvm(java虚拟机)结束

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值