java三种循环结构_Java的三种结构(循环结构)

一.循环的概念,组成,及类型

1.循环的概念: 程序通过某种条件,重复的执行一段逻辑代码

2.循环的组成:

i.初始部分:用以判断的变量

ii.循环条件:决定是否继续循环的依据,一般为布尔表达式

iii.循环操作:单次执行的逻辑代码或任务

iv.迭代部分:控制循环条件改变的数据变化

注意:被循环条件判断的变量才是循环的初始变量和迭代部分

3.循环的类型

i. do{}while();循环,一般用在不确定循环次数的场景下

ii.while(){}循环,一般用在循环次数明确的场景下

iii.for(;;;){}循环,一般用在循环次数明确的场景下

二.do{}while();循环

语法:

do{

//逻辑代码;

}while(布尔表达式);

该循环的特点是:先执行大括号里的逻辑代码再进行while语句里的判断,若while()里的布尔表达式为真则接着执行,否则不执行

因此该循环的循环次数为1-n次,也就是无论如何都会先执行一次do里的逻辑代码

三.while(){}循环

语法:

while(布尔表达式){

//逻辑代码;

}

该循环的特点是先判断布尔表达式的真假,若为真则执行逻辑代码,为假则结束循环

因此该循环的循环次数是0-n次

四.for(;;){}循环

语法:

for(初始条件;布尔表达式;迭代部分){

// 逻辑代码;

}

该循环特点为:可以一次性把循环的组成放入for语句中,for循环的执行过程为查看有无初始条件,然后进行布尔表达式的判断

若为假则结束循环,若为真则进行逻辑代码的执行,然后执行迭代部分,再接着一次循环

且若有需要可以把初始条件和迭代部分放在其他地方,但分号不可省略

此循环的循环次数为0-n次

注意:for循环可以用关键字break控制它,用法为:

先给for循环命名,命名语法是 命名:for(;;;){}

然后可以用 break 命名;

打断该循环,但好像代码界里对此方法颇有诟病

continue无此特殊用法

五.流程控制关键字

1.break

该关键字用于跳出循环结束该循环,特殊用法放在了for循环介绍里,执行流程为:

程序读到break关键字则会去寻找放入了该语句的循环体,根据就近原则跳出拥有该关键字的最近的循环

while(true){break;int a = 5;

}/*

*在该循环中,若无break则是一个死循环,但有了break之后

*程序判断入口表达式为真,进去执行代码时发现了break

*则接着直接跳出该循环,连对接下来循环内变量 a 的初始化赋值都不会进行*/

2.continue

该关键字用于跳出本次循环进行下一次循环,执行流程为:

程序读到continue 关键字则会跳出本次循环,然后根据就近原则进行下一次循环的判断执行

如:

while(i){ //假设已经给i赋值为true

i = falsecontinue;

i= true;

}//在该循环中,程序判断入口表达式为真,进入循环执行逻辑代码,给入口变量赋值为假,然后程序执行了continue//程序直接跳出该次循环,不执行后续语句,然后进行下一次的循环,但入口值已经改变,该循环结束,也不会读取i = true//与break的区别是,break直接结束,不会再进行下一次循环,更不会有下一次循环的入口判断,而continue则会

六.循环的嵌套

一般的,循环可以相互嵌套,用for举例 如:

for(int i = 0;i < 5;i++){for(int j = 0;j < 5;j++){//代码体;

}//代码体;

}/**在本循环中,执行程序为,第一个循环的初始值i 为0,显然满足入口条件,接着进入第一层循环体,然后进行第二个循环体的循环

*而第二层循环体的入口条件显然也满足,因此在该示例中第一层的第一次循环则要完成第二层的全部循环,也就是说外层循环一次

*内层要把所有的循环次数都循环完成,然后外层开始第二次循环判断,所以这一整个大的循环体循环进行次数为 若外层为 i 次

*内层为 j 次,则总循环次数为 i*j

*注意,在这种大的循环体中 break,continue关键字都是根据就近原则使用 (除了对某个循环赋值后 用break打断)*/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值