三种循环结构语句

三种循环结构语句

1.for循环

格式:
	for(初始化语句1; 判断语句2; 步进语句3){
        循环代码4
	}
  • 1
  • 2
  • 3
  • 4
执行流程:
	先执行1初始化语句
	执行2判断语句,如果判断结果是true
	执行4循环代码
	执行3步进语句
		继续回到2 4 3 2 4 3 
		如果判断结果是false,代表循环结束
注意:
	初始化语句只在第一次循环中执行,之后不再执行

代码

public static void main(String[] args) {
        /*
        判断0-10的奇偶数
         */
        //偶数:能够被2整除的数字称为偶数
        // 0 是一个特殊的偶数
        for(int i=0;i<=10;i++){
            if (i%2 == 0){
                System.out.println(i+"是偶数");
            }else {
                System.out.println(i+"是奇数");
            }
        }
    }

console

0是偶数
1是奇数
2是偶数
3是奇数
4是偶数
5是奇数
6是偶数
7是奇数
8是偶数
9是奇数
10是偶数

2.while循环

格式:
	初始化语句1;
	while(判断语句2){
        循环代码3;
        步进语句4;
	}

 

执行流程:
	1 初始化语句
	2 执行判断语句,如果是true就执行大括号里面的代码,如果是false就结束循环
	3 循环代码
	4 步进语句
	
	再次循环执行2判断语句
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

代码

public static void main(String[] args) {
        /*
        求1-100的累加和
         */
        int x = 1;
        int sum = 0;
        while (x<=100){
            sum += x;
            x++;
        }
        System.out.println("1-100的累加和为:"+sum);
    }

console

1-100的累加和为:5050
  • 1

3.do-while循环

格式:
	初始化语句1;
	do{
        循环语句2;
        步进语句3;
	}while(判断语句4);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
执行流程:
	1 初始化语句
	2 循环语句
	3 步进语句
	4 判断语句 , 如果判断的结果是true就继续循环,如果判断的结果是false就结束循环
注意:
	do-while循环是先执行后判断,不管条件是否满足至少执行一次
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

代码

public static void main(String[] args) {
        /*
        输出1-10的和
         */
        int a = 1;
        int sum = 0;
        do {
            sum += a;
            a++;
        }while (a<=10);
        System.out.println("1-10的和为:"+sum);
    }

console

1-10的和为:55

 

三种循环的使用场景

三种循环结构均可实现相应的功能,按照实际需要选择更为简便的形式。以下为使用场景的总结:
	1.明确循环次数的时候:建议使用for循环	
	2.不明确循环次数的时候:建议使用while循环
	3.do...while循环比较特殊,它先执行循环体,然后根据判断条件决定是否再次执行循环,即do...while至少执行一次循环

 

循环嵌套

代码1

public static void main(String[] args) {
        /*
        循环嵌套:
            外层循环执行1次,内存循环执行一圈
         */
        /*
        循环出从0点0分-23点59分
         */
        //遍历小时
        for (int i=0; i<24; i++){
            //遍历分钟
            for (int j=0; j<60; j++){
                System.out.println(i + "点" + j + "分");
            }
        }

 

console

0点0分
0点1分
0点2分
...
23点57分
23点58分
23点59分

代码2

public static void main(String[] args) {
        for (int i = 1; i < 10; i++) {
            System.out.println("你是第" + i + "位顾客");
            while (true) {
                System.out.println("请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买");
                Scanner sc = new Scanner(System.in);
                int a = sc.nextInt();
                if (a == 1) {
                    System.out.println("您购买的是水果");
                } else if (a == 2) {
                    System.out.println("你购买的是蔬菜");
                } else if (a == 3) {
                    System.out.println("您购买的是饮品");
                } else if (a == 4) {
                    break;
                } else {
                    System.out.println("您输入的指令有错误");
                }
            }
        }
    }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

console

你是第1位顾客
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
1
您购买的是水果
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
2
你购买的是蔬菜
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
4
你是第2位顾客
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
3
您购买的是饮品
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
4
你是第3位顾客
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
2
你购买的是蔬菜
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
...
你是第9位顾客
请选择你想要购买的商品:1.水果 2.蔬菜 3.饮料 4.结束购买
2
你购买的是蔬菜
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

两种死循环的写法

1.while(true){...}
2.for(;;){...}
posted @ 2021-01-05 08:44  如花ya  阅读(845)  评论(0编辑  收藏  举报