Chapter03_流程控制语句

第二章 判断语句

2.1判断语句1--if

  • if语句第一种格式:if

    if(关系表达式){
        语句体;
    }
    

    例子:

    public static void main(String[] args){
        int a = 1;
        int b = 2;
        if(a=b){
            System.out.println("相等")
        }
        System.out.println("不相等。")
    }
    
  • if语句第二种格式:if...else

    if(关系表达式){
        语句体1;
    }else{
        语句体2;
    }
    

    例子:

    public static void main(Stringp[] args){
        //判断给定的数据类型是奇数还是偶数
        //定义变量
        int a = 6;
        if(a %2 ==0){
            System.out.println("a为偶数")
        }else{
            System.out.println("a为奇数")
        }
        System.out.println("结束。")
    }
    
  • if语句的第三种各式--if..else if..else

    if(判断条件1){
        语句体1;
    }else if(判断条件2){
        语句体2;
    }
    ...
    }else if(判断语句n){
        语句体n;
    }else{
        执行语句n+1;
    }
    

    例子:

    public static void mian(String[] args){
        int x = 5;
        int y;
        if(x>=6){
            y = 3x+2;
        }else if(-3<=x & x<6){
            y = 2x+9;
        }else{
            y = x+3;
        }
        System.out.println("y的值为:"+y)
    }
    

2.2 if语句与三元运算符的转换

public static void main(String[] args){
    int a = 1;
    int b = 2;
    int c;
    if(a>b){
        c = a;
    }else{
        c = b;
    }
    //改写成三元运算符
   c = a>b?a:b;
}

第三章 选择语句

3.1 选择语句--switch

  • switch格式

    switch(表达式){
            case 常量值1:
                语句体1;
                break;
            case 常量值2:
                语句体2;
                break
             ...
             default:
      			语句体n+1;
                break;
    }
    
  • 执行流程

    • 首先计算表达式的值。
    • 其次,和case一次相比较,一旦有对应的值,就会执行相应的语句,在执行过程中,遇到break就会结束。
    • 最后,如果所有的case值都和表达式结果不匹配, ,就会执行default语句部分,饭后程序结束。
  • 举例:

    switch 语句中,表达式的数据类型可以是byte、short、int、char、enum(枚举),jdk7后可以接收字符串。

public static void main(String[] args){
    int j = 9;
    switch(j){
        case 1:
            System.out.println("王者荣耀")
                break;
                case 2:
                System.out.println("天天酷跑")
                break;
                default:
                System.out.println("穿越火线")
                
    }
}

3.2 case的穿透性

定义:在switch语句中,如果case后不写break,将出现穿透现象,也就是不会再判断下一个case值,直接向后运行,直到遇见break,或者整体switch结束。

例子:

public static void main(String[] args){
    int i = 3;
    switch(i){//switch 表达式
        case 1:
            System.out.prinkln(1);
            break;
        case 3:
            System.out.priuntln(3);
        case 6:
            System.out.prinkln(6);
            break;
    }
}

上述程序中,在执行case3后,由于没有break语句,程序会继续向后走,不会判断case,直到遇到下一个break。

第四章 循环语句

4.1 循环概述

​ 循环语句在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句。当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而循环结束,否则将一直运行下去,形成死循环。

4.2 循环语句1--for

  • for循环语句格式:

    for(初始表达式①;布尔表达式②;步进表达式④){
        循环体③;
    }
    
    public static void main(String[] args){
        //计算1-100奇数和
        int num = 0;
        for(int i=1;i<=100;i++ ){
            if(i % 2!=0){
                num +=i;
            }
        }
        System.out.println("奇数和为"+num )
    }
    

4.3 循环语句2 --while

while循环语句格式

初始化表达式1
while(布尔表达式2){
	循环体3
	步进表达式4
}
public static void main(String[] args){
    int x = 1;
    while(x<=10){
        System.out.println("萝莉!");
            x++;
    }
}

4.4 循环语句3--do...while

do...while循环语句格式

初始化表达式1
do{
循环体3
步进表达式4
}while(布尔表达式2);
public static void mian(String[] args){
    int i = 1;
    do{
        System.out.println("御姐")
    }while(i<=10)
}

特点:无条件执行一次循环体,即使我们将循环条件(布尔表达式的结果)直接写为false,也依然会循环一次。

public static void main(String[] args){
    do{
        System.out.println("无条件执行一次。")
    }while(false)
}

4.5 循环语句的区别

  • for和的while小区别
    • 控制条件语句所控制的那个变量,在for循环结束后,就不能在被访问到了。而while循环结束后还可以继续使用。原因是for循环结束后,该变量就从内存中消失,能够提高内存的使用效率。
    • 在已知循环次数的时候推荐用for,未知的时候推荐用while。

4.6 跳出语句

break

  • 使用场景:终止switch或者循环

    • 在选择结构switch语句中

    • 在循环语句中

    • 离开使用场景的存在是没有意义的

      public  static void main(String[] args){
          for(int a = 1;a<=9;a++){
              if(a==3){
              System.out.println("结束。")
                  break;
              }
              System.out.println("运行"+a)
          }
      }
      

    continue

    • 使用场景:结束本次循环,继续下一次的循环

      public static void main(Strig[] args){
          for(int i = 1;i<9;i++){
              if(i==6){
                      continue;
              }
              System.out.println("运行结果"+i)
          }
      }
      

第五章 扩展知识点

5.1 死循环

  • 死循环就是循环条件永远为true,死循环就是永不结束的循环。例如while(true){}

5.2 循环嵌套

  • 所谓的嵌套循环,就是指一个循环的循环体是另一个循环。

    for(初始化表达式1;循环条件2;步进表达式7){
        for(初始化表达式3;循环条件4,步进表达式6){
            执行语句7;
        }
    }
    

原文地址:https://www.cnblogs.com/anke-z/p/12253316.html