1.6 JAVA循环结构语句

循环结构语句

循环语句是为了让代码有条件或者无条件的重复执行

循环结构三类:

1.while循环结构

2.do...whlie循环结构

2.for循环结构(foreach循环结构,增强版的for循环结构)

1 while循环结构

whlie循环结构,与if结构类型(判断条件),while也需要接收一个判断的条件,需要是一个boolean类型的值,判断的条件可扩展比较强。

如果判断的条件为真,则循环执行判断代码块中的内容, 使用{}进行包裹的内容,称之为循环体。

while循环结构的语法格式:

while(判断条件) {
    循环体
}

总结:

首先检测while循环结构中的判断条件,是否为true,如果条件为true则执行循环体中的代码块;代码块执行完毕后,会继续将当前的whlie循环条件进行判断,如果条件满则则继续重复执行以上的操作。只要出现判断条件的结果值为false则,终止当前的while循环结果,跳过了循环体对应的代码块中的内容。

要保证while循环的条件是有终止条件的,一般情况下在循环体内容来控制循环的条件发生改变。防止判断的条件用真,则会陷入死循环的状态。

2 do...while循环结构

是一个循环结构,结构上和while循环也是极为类型的。

do...while循环的语法结构:

do {
    循环体
} while(判断条件);

语法特点:

1.整个do...while循环结构需要使用“;”作为语句的结尾;

2.在执行do...while结构的时候,首先直接进入到{}内部,即直接执行循环结构;

3.再去判断条件是否成立,如果整理则再次进入到循环的结构体内容执行代码;反之,则只写退出do...while循环结果,之后结构之后代码块。

3 while循环和do...while循环区别

1.while循环首先做条件的判断,如果条件不成立则不会执行循环代码块中的内容

2.do...while循环首先先将循环代码块中的内容执行一遍,再去判断循环条件是否成立。

3.do...while循环结构无论条件是否成立,最终都会被执行一次循环体中内容。

4 for循环结构

while循环和do...while在判断的条件只有两种状态才会只用这种结构。

for循环结果,用于操作循环次数固定(循环次数已知)的循环操作。

for循环结构语法格式:

例子:for (i=1;i<=5;i++)
​
for(循环初始化①;循环执行条件②;循环步长④){
循环体③
}//执行顺序为1234 234 234 234....

for循环的语法解析过程:

第一步:先将1执行(初始化操作)

第二步:执行2操作(如果这个判断条件不成立则执行结束程序,如果条件成立则往后执行)

第三步:执行4操作(循环体执行完成了一遍)

第四步:执行3操作(控制整个循环的终止条件,操作表达式,操作的是初始化的变量)

第五步:执行2操作(判断条件),重复操作第三步

第六步:退出for循环结果

案例:使用for循环结构,求出1-100之间所有的数之和。分析:循环的次数是固定的,建议使用for循环结构完成。

public class Example03 {
    public static void main(String[] args) {
        int count = 0;
        for(int i = 1; i <= 100; i++) {
            count += i;
        }
        System.out.println("1-100的和:" + count);
    }
}

总结:

1.当循环的次数固定的时候采用for循环结果来操作。

2.for循环操作的顺序:初始化表达式-判断条件-循环体-操作表达式-判断条件

5 循环嵌套

将循环结构中嵌套新的循环结果。嵌套测次数没有要求(大多数场景两次嵌套)。可以将任意循环嵌套任意循环。大多数的循环嵌套都是for循环嵌套for循环。

for循环嵌套for循环语法结构:

for(初始化表达式;判断条件;操作表达式) {
    ....
    for(初始化表达式;判断条件;操作表达式) {
        循环体
    }
    ....
}

使用for循环嵌套来完成直角三角形的打印输出(循环的次数是固定的)。

public class Example04 {
    public static void main(String[] args) {
        /**
         * 一个变量的作用域(使用范围),取决于这个变量之前的第一个
         * {括号,
         */
        // 控制打印的行数
        for (int i = 1; i<=9; i++) {
            // 当前行的*对应的个数,与行数是匹配的
            // 外层循环此时的i取值决定了内层循环的每次的次数
            for (int j = 1; j<=i;j++) {
                /**
                 * print():将参数的内容打印输出,不会换行
                 * println():将参数的内容打印输入,之后并进行换行操作
                 */
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

6 跳转语句

经常在循环结构中,需要进行跳转操作,使用跳转语句来解决这个问题。提供了两个关键字:

  • break:

    (1)如果在switch结果中使用,终止某个case语句,并且会退出当前的switch语句的结果。

    (2)如果在循环结果中使用,直接终止掉当前循环结果,即退出循环结果。

    (3)如果break出现在一个嵌套循环的内容,跳出内层的循环,而不会跳出外部的循环。

  • continue:

    可以结合循环语句使用,跳过本次的循环,执行下一次循环结构。

public class Example05 {
    public static void main(String[] args) {
        int x = 1;
        while(x<4) {
            System.out.println("x=" + x);
            if (x == 3) {
                break; // 如果x的值取值为3则直接跳出while循环结构
            }
            x++; // 自增操作
        }
    }
}

在双层循环中使用break案例:

public class Example06 {
    public static void main(String[] args) {
        for (int i = 1; i <= 9; i++) {
            for (int j=1; j<=i; j++) {
                if (i>=4) {
                    break;
                }
                System.out.print("*");
            }
            // 换行
            System.out.println();
        }
    }
}

求1-100的奇数所对应的和。

public class Example07 {
    public static void main(String[] args) {
        // 求奇数的和
        int num = 0;
        for (int i = 1; i <= 100; i++) {
            if (i%2==0) { // 表示这是一个偶数
                // 跳跳过本次循环,进入下次循环
                // 从continue所对应的当前,跳过后续所有的代码,然后再进入下次循环
                continue;
            }
            num += i;
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值