Java基础——流程控制语句(循环结构)

目录

一、循环结构

1.while循环

2.do...while循环

3.for循环

4.嵌套for循环

二、while、do...while、for循环区别

三 、break 、continue、return的使用

1.break 的使用

2.continue的使用

3.retutn 的使用

4.总结:

一、循环结构

1.while循环
定义变量并赋初始值
while(循环条件){ 
// 循环体
 } 要改变循环变量

image-20230803215457726

注意:在循环体中要动态改变循环变量

  • 关键字 while 后的小括号中的内容是循环条件。

  • 循环条件是一个布尔类型的表达式,它的值为 true 时执行循环体,它的值为 false时终止循环。

  • 大括号中的语句是循环体。

  • while 循环是先判断条件是否成立,再决定是否执行循环体。如果第一次循环时,循环条件为 false,那么循环将一次也不执行。

2.do...while循环
循环变量初始化 
do { 
循环体 } 
while (循环条件);

image-20230803220006151

  • do-while 循环以 do 开头。

  • 一对大括号中是循环体。

  • while 关键字和后面的小括号中是循环条件

  • do-while 循环是先执行一遍循环体,然后再判断循环条件是否成立,即使循环条件不成立,那么也至少执行了一遍循环体。

3.for循环
  1. for(表达式1;表达式2;表达式3){
// 循环体

} 表达式1可以是循环变量初始化 表达式2循环条件 表达式3可以是改变循环变量 for(循环变量初始化;循环条件;改变循环变量){ // 循环体 } 执行顺序:** 1.执行表达式1(循环变量初始化) 2.执行表达式2(判断循环条件) 3.如果表达式2返回true(循环条件成立),执行循环体,如果表达式2返回false,结束循环,不进行之后的操作。 4.执行表达式3(改变循环变量) 5.重复2操作

注意:表达式1只执行1次**

for 循环以关键字 for 开头。

一对大括号中是循环体。

表达式 1 是循环变量初始化,表达式 2是循环条件,表达式 3 是改变循环变的值,无论循环执行多少次,表达式 1 只执行一次。

4.嵌套for循环

将一个循环放在另一个循环体内,就形成了嵌套循环。其中,for、while、do...while 均可以作为外层循环或内层循环。

实质上,嵌套循环就是把内层循环当成外层循环的循环体。当只有内层循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当次循环,开始下一次的循环。

设外层循环次数为m次,内层为n次,则内层循环体实质上需要执行m*n次。

通俗讲就是,存在至少2层for循环,根据外层的条件,判断里层能否执行;如果能执行,就把里层代码都循环完毕后,再继续判断是否执行外层循环的下一次循环。

  • while 循环是外循环,for 循环是内循环。

  • 外循环每循环一次,内循环就从头到尾完整地循环一遍。

  • while 循环、do-while 循环、for 循环都可以相互套。

二、while、do...while、for循环区别

  • for 适合循环次数已知/每次都要改变循环变量的情况

  • while 适合循环次数不确定的情况

  • do-while 相对于 while 来说,至少要执行一次的情况

三 、break 、continue、return的使用

1.break 的使用
  • break 语句用于终止某个语句块的执行。

  • 在循环中遇到break语句时,循环被终止,在循环后面的语句重新开始。

  • break 语句能使用于任何Java循环中,包括人们有意设置的无限循环

  • switch 循环语句中break 仅影响 switch 语句,不会影响循环。

  • 在一系列嵌套循环中使用break 语句时,它将仅仅终止最里面的循环。 语法:

{       ......
       break;
       ......}

break 的使用练习:

public class Testapp1 {
    public static void main(String[] args) {
        // 外循环,循环5次
        for (int i = 0; i < 5; i++) {
            System.out.print("第" + (i + 1) + "次循环:");
// 内循环,设计为循环10次
            for (int j = 0; j < 10; j++) {
// 判断j是否等于3,如果是,则终止循环
                if (j == 3) {
                    break;
                }
                System.out.print("内循环的第" + (j + 1) + "次循环\t");
            }
            System.out.println();
        }
    }
}
2.continue的使用
  • continue 只能使用在循环结构中

  • continue 语句用于跳过其所在循环语句块的一次执行,

  • continue 语句是用来加速循环

  • continue练习:

    public class Testapp1 {
    public static void main(String[] args) {
    for (int i = 1; i < 10; i++) {
        if (i%3 == 0) {
            continue;
​
3.retutn 的使用
  • return :并非专门用于结束循环的,它的功能是结束一个方法,当一个方法执行到一个return语句时,这个方法将被结束。

  • 与break 和 continue 不同的是,return 直接结束整个方法,不管这个return 处于多少层循环之内。

练习:

public class Testapp1 {
    public static void main(String[] args) {
        // 外循环,循环5次
        // 循环 打印 1-10 如果是3的倍数,则不打印
        for (int i = 1; i < 10; i++) {
            if (i%3 == 0) {
//continue;
                return; //直接退出main函数
            }
            System.out.println(i);
        }
​
    }
​
}
4.总结:
  • break 只能用于switch 语句和循环语句中。

  • continue 只能用于循环语句中。

  • 二者功能类似,但continue 是终止本次循环,break 是终止本层循环。

  • break、continue 之后不能有其他的语句,因为程序永远不会执行其后的语句。

  • 标号语句必须紧接在循环的头部。标号语句不能用在非循环语句的前面。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值