循环结构while和do-while和for循环

循环结构:while循环,do-while循环

while循环结构:

        初始值

        while(循环条件){

                循环操作

                迭代

                        }

执行规律:先判断循环条件为true还是为false,若是为true,则执行循环操作还有迭代,否则

结束while语句;继续向下执行while之外的语句。

注意:

1.无论循环条件多么的复杂和简单,他的结果只能是布尔值(Boolean)

2.初始代码只执行一次

3.迭代的目的是让while语句在某一刻不满足循环条件从而结束循环

4.while语句实现判断循环条件在选择执行,有可能一次都

do-while循环结构:

        初始值

        do{

                循环操作

                迭代

                }while(循环条件);

执行规律:

        先执行一次初始值,循环操作,迭代,再判断循环条件为true还是为false,若是为true,则执行循环操作还有迭代,否则结束while语句;继续向下执行while之外的语句。

注意:

        1.无论循环条件多么的复杂和简单,他的结果只能是布尔值(Boolean)

        2.先执行一次初始值

        3.迭代的目的是让while语句在某一刻不满足循环条件从而结束循环

        4.do-while语句先循环一次初始值 ,然后在判断循环条件结果是否在继续执行循环操作,如果第一次判断循环条件就不满足,循环操作也会执行一次(do-while循环里的循环操作至少会执行一次)

for循环:

        语法结构:

                for(初始值;循环条件;迭代){

                                                        循环操作

                                                                        }

        执行规律:

                先执行一次初始值,然后判断循环条件,若循环条件为true则执行循环操作,然后再执行迭代部分,最后根据条件的结果来决定是否继续执行循环语句,若循环条件一开始就是false则结束for循环语句(循环语句一次也不执行)

        注意:

                1.初始值只执行一次

                2.循环条件的结果只能是布尔值(Boolean)

                3.如果第一次不满足循环条件,则循环条件一次也不会执行

for循环常见的问题:

        问题1:直接报错 缺少初始值,初始值可以写在外面

/*int i=1;

for(;i<10;i++){

     System.out.println("这是 "+i);

}

*/

//常见问题2:缺少循环条件,会陷入死循环

/*for(int i=0;;i++){

      System.out.println("这是 "+i);

}

*/

        问题3:缺少迭代,陷入死循环,可以在{}里添加迭代代码,也可以在()最后位置添加迭代代码

/*for(int i=0;i<10;){

       System.out.println("这是 "+i);

    

}

       问题四:for循环缺少初始值、循环条件、迭代,会进入死循环

for(;;){

     System.out.println("这是测试");

}

for循环与while和do-while的区别:

        1.语法结构的不同

        2.执行顺序不同:

                while循环:先判断在执行;

                do-while:先执行在判断;

                for循环:先判断在执行;

        3.适用范围:

                循环次数确定的情况下用for循环

                循环次数不确定的情况下,通常用while和do-while循环

Java的二重循环

        二重循环的语法结构:

                        While(循环条件){

                                                //循环操作

                                                while(循环条件){

                                                  //循环操作

                                                                                }

                                                                                        }

     do{

                //循环操作

                do{

                        //循环操作

                        }while(循环条件)

                                }while(循环条件);

        for(循环条件){

                                //循环操作

                                        for(循环条件){

                                                        //循环操作

                                                                        }

                                                                                        }

                while(循环条件){

                                        //循环操作

                                                for(循环条件){

                                                                        //循环操作

                                                                            }

}

        注意:

                各个循环可以互相嵌套

                一般不超过三层

                 外层循环变化一次,内层循环变量要变化一遍

多重循环案例

        // 输出

//        *****

/*        *****

 *         *****

 *         *****

 *         *****

 */

package cn.bdqn.demo03;

public class LoopDemo02 {

public static void main(String[] args) {

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

for(int j=1;j<=5;j++){//利用for循环来代替System.out.println("*****");

System.out.print("*");//注意这里不换行

}

System.out.println();

}

}

}

/*        输出

 *     *****

 *           *****

 *   *****

 *  *****

 * *****

 *

*/

public class LoopDemo04 {

public static void main(String[] args) {

//外循环控制行数

for(int i=0;i<=5;i++){

for(int k=6-i;k>0;k--){

//输出每一行的空格

System.out.print(" ");

}

//内循环控制列数,就是每行中的*有多少个

for(int j =0;j<=5;j++){

System.out.print("*");

}

System.out.println();//换行

}

}

}

package cn.bdqn.demo03;

public class Loopdemo05 {

public static void main(String[] args) {

/*//输出            *

           ***

          *****

         *******

        *********

*/

for(int i = 1;i<=5;i++){//外循环 定义输入的行数

for(int k=6-i;k>0;k--){

System.out.print(" ");//内循环输出空格,注意不能换行

}

for(int j =1;j<=2*i-1;j++){//找出行与列的关系然后进行循环

System.out.print("*");

//输出*记得不换行

}

System.out.println();//换行

}

}

}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值