while,do...while及for三种循环结构
循环结构
while循环
- 
while (布尔表达式) { //循环内容 }
- 
只要布尔表达式为true循环就会一直执行 
- 
我们大多数情况会让循环停止下来,需要一个让表达式失效的方式来停止循环 
while循环示例
public class whileDemo01 {
    public static void main(String[] args) {
        int i=0;
        int sum=0;
        //输出1-100
        while (i<100){
            i++;
            sum=i+sum;
        }
        System.out.println(sum);
    }
}
do...while循环
- 
do...while循环至少会执行一次 - 
do () { //代码语句 } while (布尔表达式);
 
- 
- 
while和do...while的区别 - while是先判断后执行,do...while是先执行后判断
- do...while总能保证循环至少被执行一次
 
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);
    }
}
public class dowhileDemo02 {
    public static void main(String[] args) {
        int a=0;
        while (a<0){
            System.out.println(a);
        }
        System.out.println("===========================");
        do {
            System.out.println(a);
            a++;
        }while (a<0);
    }
}
for循环
- 
for循环语句是一种支持迭代的通用结构,是最有效、最灵活的循环结构 
- 
for循环执行的次数在执行前就确定 - 
for(初始化;布尔表达式;更新) { //代码语句 }
 
- 
for循环示例
public class forDemo01 {
    public static void main(String[] args) {
        int a=1;
        while (a<=100){
            System.out.println(a);
            a+=2;
        }
        for (int i=1;i<=100;i++){
            System.out.println(i);
        }
        System.out.println("for循环结束");
    }
}
分别输出0-100之间奇数及偶数的和
public class forDemo02 {
    public static void main(String[] args) {
        //0-100之间奇数和偶数的和
        int sum1=0;
        int sum2=0;
        for (int i = 0; i <= 100; i+=2) {
            sum1=sum1+i;
        }
        for (int j = 1; j <=100; j+=2) {
            sum2=sum2+j;
        }
        System.out.println(sum1);
        System.out.println(sum2);
    }
}
输出1-1000的质数,每三个换行
public class forDemo03 {
    public static void main(String[] args) {
        for (int i1 = 1; i1 <= 1000; i1++) {
            if (i1%5==0){
                System.out.print(i1+"\t");
            if (i1%(5*3)==0){
                System.out.println("\n");
                }
            }
        }
    }
}
数组的定义及遍历
public class forDemo05 {
    public static void main(String[] args) {
        int[] number={10,20,30,40,50};  //定义了一个数组
        //遍历数组的元素
        for (int i = 0; i < 5; i++) {
            System.out.println(number[i]);
        }
        System.out.println("============================");
        for (int x:number){
            System.out.println(x);
        }
    }
}
打印九九乘法表
public class forDemo04 {
    public static void main(String[] args) {
        //拆分问题,拆分成不同的小问题逐步化解
        //1.先打印第一列
        //2.把固定的1再用循环包起来
        //3.去掉重复项,i2<=i1
        //4.调整样式
        for (int i1 = 1; i1 <= 9; i1++) {
            for (int i2 = 1; i2 <= i1; i2++) {
                System.out.print(i2+"*"+i1+"="+(i1*i2)+"\t");
            }
            System.out.println();
        }
    }
}
输出三角形
public class testDemo01 {
    public static void main(String[] args) {
        for (int i = 1; i <= 5; i++) {
            //输出的空格逐渐减少,可将初始值设为最大之后逐渐减小
            for (int i1 = 5; i1 >= i; i1--) {
                System.out.print(" ");
            }
            //输出的数字逐渐增多,可将初始值设为最小之后逐渐增大
            for (int i1 = 1; i1 <= i; i1++) {
                System.out.print(i1);
            }
            //输出的数字逐渐增多,将初始值设为最后之后逐渐增大
            for (int i1 = 1; i1 < i; i1++) {
                System.out.print(i1);
            }
            System.out.println();
        }
    }
}
break与continue
- break用于跳出当前循环结构,继续执行后续语句;
- continue用于结束本次循环,不再执行本次循环的后续语句,直接进入下次循环;
作者:wangyudong
本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。 
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号