JAVA 基础 /第十六课: 控制流程 / JAVA的IF和IF ELSE 和 ELSE IF 以及 SWITCH 条件语句

2018-03-07

1.if

if ( 表达式1 ){ 表达式2; }
如果表达式1的值是true,就执行表达式2
public class HelloWorld {
    public static void main(String[] args) {
         
        boolean b = true;
        //如果成立就打印yes
        if(b){
            System.out.println("yes");
        }
         
    }
}

2.多表达式与一个表达式

public class HelloWorld {
    public static void main(String[] args) {
         
        boolean b = false;
        //如果有多个表达式,必须用大括弧包括起来
        if(b){
            System.out.println("yes1");
            System.out.println("yes2");
            System.out.println("yes3");
        }
         
        //否则表达式2 3 无论b是否为true都会执行
         
        if(b)
            System.out.println("yes1");
            System.out.println("yes2");
            System.out.println("yes3");
             
        //如果只有一个表达式可以不用写括弧,看上去会简约一些
        if(b){
            System.out.println("yes1");
        }
         
        if(b)
            System.out.println("yes1");
         
    }
}

3.if 使用过程中可能遇到的坑

在第6行,if后面有一个分号; 而分号也是一个完整的表达式
如果b为true,会执行这个分号,然后打印yes
如果b为false,不会执行这个分号,然后打印yes
这样,看上去无论如何都会打印yes

public class HelloWorld {
    public static void main(String[] args) {
 
        boolean b = false;
 
        if (b);
            System.out.println("yes");
 
    }
}

4.if else

else 代表不成立的情况

public class HelloWorld {
    public static void main(String[] args) {
 
        boolean b = false;
 
        if (b)
            System.out.println("yes");
        else
            System.out.println("no");
 
    }
}

5.else if

else if 是多条件判断

public class HelloWorld {
    public static void main(String[] args) {
 
        //如果只使用 if,会执行4次判断
        int i = 2;
        if (i==1)
            System.out.println(1);
        if (i==2)
            System.out.println(2);
        if (i==3)
            System.out.println(3);
        if (i==4)
            System.out.println(4);
         
        //如果使用else if, 一旦在18行,判断成立, 20行和22行的判断就不会执行了,节约了运算资源
        if (i==1)
            System.out.println(1);
        else if (i==2)
            System.out.println(2);
        else if (i==3)
            System.out.println(3);
        else if (i==4)
            System.out.println(4);     
         
    }
}

6.switch

swich 语句相当于 if else的另一种表达方式,switch可以使用byte,short,int,char,String,enum

注: 每个表达式结束,都应该有一个break;
注: String在Java1.7之前是不支持的, Java从1.7开始支持switch用String的,编译后是把String转化为hash值,其实还是整数
注: enum是枚举类型,在枚举章节有详细讲解

public class HelloWorld {
    public static void main(String[] args) {
         
        //如果使用if else
        int day = 5;
        if (day==1)
            System.out.println("星期一");
              
        else if (day==2)
            System.out.println("星期二");
        else if (day==3)
            System.out.println("星期三");
        else if (day==4)
            System.out.println("星期四");
        else if (day==5)
            System.out.println("星期五");
        else if (day==6)
            System.out.println("星期六");
        else if (day==7)
            System.out.println("星期天");
        else
            System.out.println("这个是什么鬼?");
         
        //如果使用switch
        switch(day){
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期天");
                break;
            default:
                System.out.println("这个是什么鬼?");
        }
         
    }
}
原文地址:https://www.cnblogs.com/Parker-YuPeng/p/8522763.html