for、while循环语句总结

循环语句

循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环

1.for语句

格式:
for(初始化表达式语句;判断条件语句;控制条件语句) {
	循环体语句;
}
执行流程:
  1. 执行初始化表达式语句

  2. 执行判断条件语句,看其返回值是true还是false
    如果是true,就继续执行
    如果是false,就结束循环

  3. 执行循环体语句;

  4. 执行控制条件语句

  5. 回到B继续。

例1:九九乘法表

package com.baidu.demo;
public class ForDemo{
    public static void main(String[] args) {
        for (int i = 1; i <= 9; i++) {
            for (int j = 1; j <=i; j++) {
                System.out.print(j+"*"+i+"="+j*i+"\t");
            }
            System.out.print("\n");
        }
    }
}

结果为:
1*1=1	
1*2=2	2*2=4	
1*3=3	2*3=6	3*3=9	
1*4=4	2*4=8	3*4=12	4*4=16	
1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	
1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	
1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	
1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	
1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81	

例2:计算水仙花数

package com.baidu.demo;
public class ForDemo {
    public static void main(String[] args) {
        int count=0; //定义一个统计变量
        for(int i=100;i<=999;i++){
            int ge=i%10;
            int shi=i/10%10;
            int bai=i/100%10;
            int flowerNumber=ge*ge*ge+shi*shi*shi+bai*bai*bai;
            if(i==flowerNumber){
                System.out.println("水仙花数是: "+i);
                count++;
            }
        }
        System.out.println("水仙花数有"+count+"个");
    }
}

注意事项:

  1. 判断条件语句无论简单还是复杂结果是boolean类型。
  2. 循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。括号一般不省略
  3. 一般来说:有左大括号就没有分号,有分号就没有左大括号

2.while语句

格式:
基本格式:
   while(判断条件语句) {
		循环体语句;
	}
完整格式:

初始化条件语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
}

执行流程:

  1. 执行初始化条件语句;
  2. 执行判断条件语句,看其返回值是true还是false
    如果是true,就继续执行
    如果是false,就结束循环
  3. 执行循环体语句;
  4. 执行控制条件语句;
  5. 回到b继续。
    例1:计算1-50的和
package com.baidu.demo;

public class WhileDemo {
    public static void main(String[] args) {
        //求1---50之间的和
        int j=1;
        int sum=0;
        while (j<=100){
            sum+=j;
            j++;
        }
        System.out.println("和是: "+sum);
    }
}
结果为:1275

3. do…while语句

格式:
	do {
	循环体语句;
}while(判断条件语句);
完整格式;
	初始化条件语句;
	do {
		循环体语句;
		控制条件语句;
	}while(判断条件语句);

执行流程:

  1. 执行初始化条件语句;
  2. 执行循环体语句;
  3. 执行控制条件语句;
  4. 执行判断条件语句,看其返回值是true还是false
    如果是true,就继续执行
    如果是false,就结束循环
  5. 回到b继续。
package com.baidu.demo;
public class DoWhileDemo {
    public static void main(String[] args) {
        //先执行do里面的代码一次,然后再去判断,while括号里面的条件是否成立,如果成立,就继续执行{}里面的语句
        //如果条件不成立,则循环结束
        int i=5;
        do{
            System.out.println("hello");
            i--;
        }while (i>2);
    }
}
结果为:
hello
hello
hello

三种语句的区别

  1. do…while循环至少执行一次循环体。而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。
  2. 如果要在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不确定用for循环。因为变量及早的从内存中消失,可以提高内存的使用效率。
  3. 建议优先考虑for循环,然后是while循环 ,最后是do…while循环。
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值