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 条评论