0
点赞
收藏
分享

微信扫一扫

【java基础11 控制语句:WHILE】

目录

WHILE循环语句

do…while


WHILE循环语句

  1. while循环的语法结构:

    while(布尔表达式){
        循环体;
    }
    
  2. while循环的执行原理:

    先判断布尔表达式的结果:
    	*true
    		-执行循环体
    			*判断布尔表达式的结果:
    				*true
    					-执行循环体
    						*判断布尔表达式结果
    							*true
    								—执行循环体
    									*判断布尔表达式结果:
    										·······
    							*flase
    								—循环结束
    				*flase
    					-循环结束
    	*false
    		-循环结束
    
  3. while循环的循环次数:

    0~~~N次

    注意:while循环的循环体可能执行次数为0。也可能执行N多次。

  4. 死循环的注意事项

    public class WhileText01 {
        public static void main(String[] args){
    
            /*
            while(true){//编译器可以识别false或true
                System.out.println("死循环");
            }
            //编译错误 编译器检测到该输出语句永远都无法被执行,所以报错
            //System.out.println("Hello World");
    
             */
            /*
            int i=10,j=3;
            while(i>j){
                System.out.println("hehe");
            }
            System.out.println("Hello World");
    
            //编译通过,因为编译器只检查语法,i是否大于j只有运行了才知道
             */
    
            /*
            while(10>3){
                System.out.println("hehe");
            }
            System.out.println("Hello World");
            //编译报错  编译器虽然只检查语法,但是可以判断10和3哪个大,所以报错
             */
    
        }
    }
    
    
  5. 在循环中使用++与–

    public class WhileText02 {
        public static void main(String[] args){
    
            int i=1;
            while(i<=10){
                System.out.println(i);//1 2 3 4 5 6 7 8 9 10
                i++;//10++后是11,11>10,循环结束
            }
            System.out.println("end--->"+i);//10
    
            System.out.println("================================================");
    
            int j=10;
            while(j>0){
                System.out.println(j--);//先赋值后运算 10 9 8 7 6 5 4 3 2 1
                System.out.println("-->"+j);//9 8 7 6 5 4 3 2 1 0
            }
            System.out.println("end--j-->"+j);
    
            System.out.println("================================================");
    
            int k=10;
            while(k>=0){
                System.out.println(--k);//先运算后赋值 9 8 7 6 5 4 3 2 1 0 -1
            }
    
    
        }
    }
    
    

do…while

  1. do…while循环的语法结构:

    do{
    	循环体;
    }while(布尔表达式);
    
  2. do…while循环的执行原理:

    先执行循环体
        *判断布尔表达式的结果:
            *true
                -执行循环体
                    *判断布尔表达式的结果:
                        ·······
            *false
                -循环结束
    
  3. do…while循环的执行次数:

    循环体代码片段执行次数是:1~N次,至少执行一次

  4. do…while循环的注意事项:

    do…while循环语句结尾有一个分号 ; 别丢了

  5. while与do…while的区别

    public class DowhileText01 {
        public static void main(String[] args){
    
            int i= 10;
    
            do{
                System.out.println(i);//输出10
            }while(i>100);
    
            while(i>100){
                System.out.println("i-->"+i);//不输出
            }
    
            int k=1;
            do{
                System.out.println(k);//1 2 3 4 5 6 7 8 9 10
                k++;
            }while(k<=10);
    
    
        }
    }
    
    
  6. 闰年的判定

    import java.util.Scanner;
    
    public class Work05201 {
    	public static void main(String[] args) {
    		
    		Scanner input=new Scanner(System.in);
    
    		int year= 1;
    		
    		while(year!=0) {
    			
    			System.out.print("输入年份,输入0结束: "); 
    			 year = input.nextInt(); 
    			
    			if(year!=0) {
    				if(year%4==0&&year%100!=0||year%400==0){
    					System.out.println(year+"年是闰年");	
    				} else{
    					System.out.println(year+"年是平年");
    				}
    			}else {
    				year =0;
    				System.out.println("结束!");
    			}
    			}		
    	
        }
    }
    
    
  7. 奇数偶数的和

    public class Work0521 {
    	public static void main(String[] args) {
    		
    		int i=0,m=0,n=0;
    		while(i<=100) {
    			
    			if(i%2==0) {
    				m=m+i;
    			}else {
    				n=n+i;
    			}
    			i++;
    		}
    	
    	System.out.println("所有偶数的和:"+m);
    	System.out.println("所有奇数的和:"+n);
    
    	}
    }
    
  8. x、y所在象限判定

    import java.util.Scanner;
    public class Work05231 {
    	public static void main(String[] args) {
    		Scanner input=new Scanner(System.in);//接受从键盘输入的数据
    		double x,y;
    		String s;
    		
    		do{
    			System.out.print("请输入x:");
    			x=input.nextDouble();
    			
    			System.out.print("请输入y:");
    			y=input.nextDouble();
    			
    			if(x>0&&y>0){
    				System.out.println(x+"."+y+"在第一象限");
    			}else if(x<0 && y>0){
    				System.out.println(x+"."+y+"在第二象限");
    			}else if(x<0 && y<0){
    				System.out.println(x+"."+y+"在第三象限");
    			}else if(x>0 && y<0){
    				System.out.println(x+"."+y+"在第四象限");
    			}
    			
    			System.out.print("是否继续?(是/否)");
    			s=input.next();
    			
    		}while(s.equals("是"));
    		
    			
    		System.out.print("程序结束");
    
    	}
    
    }
举报

相关推荐

0 条评论