Java学习——循环结构(for循环、while循环和do...while循环)

一、for循环
格式:
for(初始化表达式语句;判断条件语句;控制条件语句){
循环体语句;
}
执行流程:
a:执行初始化表达式语句
b:执行判断条件语句,看其返回值是true还是false
如果是true,就继续执行
如果是false,就结束循环
c:执行循环体语句;
d:执行控制条件语句
e:回到b继续。

下面是四个例子,对了理解for循环有很大作用。
eg1

public class For0 {
    public static void main(String[] args) {
        for (int i = 0; i <= 10; i++) {
            System.out.println("倩倩是个乖宝宝");
        }

    }
}

eg2

public class For1 {
    public static void main(String[] args) {
        /*A:
        案例演示
        需求:请在控制台输出数据1 - 10
            需求:请在控制台输出数据10 - 1*/
        for (int i = 1; i <= 10; i++) {
            System.out.println(i);
        }
        System.out.println("--------------------------");
        for (int j = 10; j >= 1; j--) {
            System.out.println(j);
        }

    }
}

eg3

public class For2 {

    public static void main(String[] args) {

//        需求:求出1 - 10 之间数据之和
        int i;
        int sum = 0;
        for (i = 1; i <= 10; i++) {
            sum += i;
        }
        System.out.println("和是" + sum);


//        需求:求出1 - 100 之间偶数和
//        需求:求出1 - 100 之间奇数和
        int ji = 0;
        int ou = 0;
        for (i = 1; i <= 100; i++) {
            if (i % 2 == 0) {
                ou += i;
            } else {
                ji += i;
            }
        }
        System.out.println("偶数和是" + ou);
        System.out.println("奇数和是" + ji);


    }
}

eg4

public class For3 {
    /*  需求:在控制台输出所有的”水仙花数”

      所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
      举例:153 就是一个水仙花数。
      153 = 1 * 1 * 1 + 5 * 5 * 5 + 3 * 3 * 3 = 1 + 125 + 27 = 153
      思路:1.采用循环
      定义一个统计变量*/
    public static void main(String[] args) {
        int s = 0;
        for (int i = 100; i <= 1000; i++) {
            int ge = i % 10;
            int shi = i / 10 % 10;
            int bai = i / 100 % 10;
            int flower = ge * ge * ge + shi * shi * shi + bai * bai * bai;
            if (i == flower && i>100) {
                s++;
                System.out.println("第"+ s +"个水仙花数是 " +i );
            }
        }
        System.out.println("number = "+s);
    }
}

二、while循环
格式:
初始化条件语句;
while(判断条件语句){
循环体语句;
控制条件语句;
}
执行流程:
a:执行初始化条件语句;
b:执行判断条件语句,看其返回值是true还是false
如果是true,就继续执行
如果是false,就结束循环
c:执行循环体语句;
d:执行控制条件语句
e:回到b继续。
eg`

public class While {
    public static void main(String[] args){
//       输出1-10;
//       输出1-100之间的偶数和
        int i=1;
        while(i<=10){
            System.out.println(i);
            i++;
        }
        System.out.println("----------------------");
        int j=1;
        int sum=0;
        while(j<=100){
            if(j%2==0) {
                sum += j;
            }
            j++;

        }
        System.out.println(sum);
    }
}

三、do…while循环
格式:
初始化条件语句;
do {
循环体语句;
控制条件语句;
}while(判断条件语句);
执行流程:
a:执行初始化条件语句;
b:执行循环体语句;
c:执行控制条件语句;
d:执行判断条件语句,看其返回值是true还是false
如果是true,就继续执行
如果是false,就结束循环
e:回到b继续。
eg

public class DoWhile {
    public static void main(String[] args){
        int i=1;
        do{
            System.out.println("倩倩是个宝宝");
            i++;
        } while(i<=10);
    }
}

四、三种循环的区别
a:do…while循环至少执行一次循环体。
而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。
b:A: 如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用for循环。因为变量及早的从内存中消失,可以提高内存的使用效率。
B:建议优先考虑for循环,然后是while循环 ,最后是do…while循环

猜你喜欢

转载自blog.csdn.net/lyf_0922/article/details/82975109