Day06-循环结构

本文详细介绍了Java中的Do-While循环和For循环结构,通过实例演示了如何计算0-100的奇偶数和,以及如何输出1-100被5整除的数。此外,还展示了增强For循环、break和continue在控制循环流程中的应用,以及打印九九乘法表的不同方法。

Day06-循环结构

Do While循环结构

public class DoWhileDemo01 {
    public static void main(String[] args) {
        int i = 0;
        int sum = 0;
        do{
            sum=sum+i;
            i++;
        }while (i<=100);
        System.out.println(sum);
    }
}

输出

5050

总结

在这里插入图片描述

For循环结构

public class ForDemo01 {
    public static void main(String[] args) {
        int a = 1;//初始化条件
        while(a<=5){//条件判断
            System.out.println(a);
            a++;//迭代
        }
        System.out.println("While循环结束!");

        //初始化、条件判断、迭代
        for (int i = 1; i <=5; i++) {
            System.out.println(i);
        }
        System.out.println("For循环结束!");
    }
}

输出

1
2
3
4
5
While循环结束!
1
2
3
4
5
For循环结束!

关于For循环的几点说明

  • 最后执行初始化步骤。可以声明一种类型,但可初始化一个或者多个循环控制变量,也可以是空语句。
  • 然后,检测布尔表达式的值,如果为true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。
  • 执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)。
  • 再次检测布尔表达式,循环执行上面的过程。

练习

练习1

计算0到100之间的奇数和偶数的和

public class ForDemo02 {
    public static void main(String[] args) {
        int oddSum = 0;
        int evenSum = 0;
        for (int i = 0; i <= 100; i++) {
            if (i%2!=0){
                oddSum = oddSum + i;
            }else {
                evenSum = evenSum + i;
            }
        }
        System.out.println("奇数的和为:"+oddSum);
        System.out.println("偶数的和为:"+evenSum);
    }
}

输出

奇数的和为:2500
偶数的和为:2550

练习2

循环输出1-100之间能被5整除的数,并且每行输出三个

package com.gong.struct;
//练习**循环输出1-100之间能被5整除的数,并且每行输出三个**
public class ForDemo03 {
    public static void main(String[] args) {
        for (int i = 0; i <= 100; i++) {
            if(i%5==0){
                System.out.print(i+"\t");
            }
            if(i%(5*3)==0){
                System.out.println();
            }
        }
    }
}
//println输出换行
// print输出不换行

输出

0	
5	10	15	
20	25	30	
35	40	45	
50	55	60	
65	70	75	
80	85	90	
95	100	
练习3

打印九九乘法表

  1. 先打印第一列
public class ForDemo04 {
    public static void main(String[] args) {
        for (int i = 1; i <=9; i++) {
            System.out.println(1+"*"+i+"="+1*i);
        }
    }
}

输出

1*1=1
1*2=2
1*3=3
1*4=4
1*5=5
1*6=6
1*7=7
1*8=8
1*9=9
  1. 再用另一个循环包起来
public class ForDemo04 {
    public static void main(String[] args) {
        for (int j = 1; j <=9; j++) {
            for (int i = 1; i <=9; i++) {
                System.out.println(j+"*"+i+"="+j*i);
            }
        }
    }
}

输出

1*1=1
1*2=2
1*3=3
1*4=4
1*5=5
1*6=6
1*7=7
1*8=8
1*9=9
2*1=2
2*2=4
2*3=6
2*4=8
2*5=10
2*6=12
2*7=14
2*8=16
2*9=18
3*1=3
3*2=6
3*3=9
3*4=12
3*5=15
3*6=18
3*7=21
3*8=24
3*9=27
4*1=4
4*2=8
4*3=12
4*4=16
4*5=20
4*6=24
4*7=28
4*8=32
4*9=36
5*1=5
5*2=10
5*3=15
5*4=20
5*5=25
5*6=30
5*7=35
5*8=40
5*9=45
6*1=6
6*2=12
6*3=18
6*4=24
6*5=30
6*6=36
6*7=42
6*8=48
6*9=54
7*1=7
7*2=14
7*3=21
7*4=28
7*5=35
7*6=42
7*7=49
7*8=56
7*9=63
8*1=8
8*2=16
8*3=24
8*4=32
8*5=40
8*6=48
8*7=56
8*8=64
8*9=72
9*1=9
9*2=18
9*3=27
9*4=36
9*5=45
9*6=54
9*7=63
9*8=72
9*9=81
  1. 去掉重复的项i<=j,并调整格式。
package com.gong.struct;
//打印九九乘法表
public class ForDemo04 {
    public static void main(String[] args) {
        for (int j = 1; j <=9; j++) {
            for (int i = 1; i <=j; i++) {
                System.out.print(j+"*"+i+"="+(j*i)+"\t");
            }
            System.out.println();
        }
    }
}

输出

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

总结

在这里插入图片描述

增强For循环

public class ForDemo05 {
    public static void main(String[] args) {
        int [] number = {1,2,3,4,5};//定义了一个数组
        for (int i = 0; i < 5; i++) {
            System.out.print(number[i]+"\t");
        }//快捷输入5.for
        System.out.println();
        System.out.println("==================");
        for (int x : number) {
            System.out.print(x+"\t");
        }//快捷输入number.for
    }
}

输出

1	2	3	4	5	
==================
1	2	3	4	5	

总结

在这里插入图片描述

break和continue

break

public class BreakDemo01 {
    public static void main(String[] args) {
        int i=0;
        while(i<100){
            i++;
            System.out.print(i+"\t");
            if(i==30){
                break;
            }
            if(i%10==0){
                System.out.println();
            }
        }
    }
}

输出

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	26	27	28	29	30	

continue

public class ContinueDemo01 {
    public static void main(String[] args) {
        int i = 0;
        while(i<30){
            i++;
            if(i%10==0){
                System.out.println();
                continue;
            }
            System.out.print(i+"\t");
        }
    }
}

输出

1	2	3	4	5	6	7	8	9	
11	12	13	14	15	16	17	18	19	
21	22	23	24	25	26	27	28	29	

区别

  • break在任何循环语句的主体部分,均可用break控制循环的流程
  • break用于强行退出循环,不执行循环中剩余的语句。(break也在switch语句中使用)
  • continue语句用在循环语句中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定。

总结

在这里插入图片描述

打印三角形

public class TestDemo01 {
    public static void main(String[] args) {
        for (int i = 1; i<=5; i++) {
            for (int j = 5; j >=i; j--) {
                System.out.print(" ");
            }
            for (int j = 1; j<=i; j++) {
                System.out.print("*");
            }
            for (int j = 1; j < i; j++) {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

输出

     *
    ***
   *****
  *******
 *********
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值