选择结构

/*
选择结构:程序有选择性的去执行某一行或某几行代码
有两种常用语句: if else语句 switch case语句
早期的鸟儿有虫子
*/

// if else语句
/*
if 如果
在 if语句 后面紧跟的是某一种情形或者条件 是一种 布尔类型 的表达式
语法规则:(布尔类型表达式) !!表达式要写在括号里边
{
如果这种情形或者条件成立,那么程序员就会进入到if后面紧邻的{}内部
后面紧邻的或括号{}可以选择不写,但是不推荐
}
如果if后面跟的是一种情形,我们也称为if else中的单支(情形/条件)语句,没有else语句
如果if 后面跟的是多种情形,我们也称为if else中的多支(情形/条件)语句,有else语句
*/
// 单支语句 if(条件语句){条件成立时,程序需要执行的代码}

    boolean isFree = false; // ture  有空  false 没空
    if (isFree) {
        System.out.println("我去找你玩...");
    }

    boolean isMoney = false;// false 没钱 true 有钱
    if (isMoney) {
        System.out.println("我就要资助贫困山区的孩子们");
    }

//多支语句
/* else 否则,其他
语法结构:
if(条件1、情形1){
条件1/情形1成立时,程序需要执行代码1...
.
.

                }else(条件2/情形2){
                       条件2/情形2成立时,程序需要执行代码2....
                ..
                .
                .

                }else (条件n/情形n){
                        条件n/情形n成立时,程序需要执行代码n.....

                }
        互斥:在多支语句中,这多种情形是一种互斥关系,非你即我,只有一种情形会成立,程序也只会执行条件里面的一种 
             代码
             在多支语句中,如果最后一种情形它包含了它以上情形之外的所有情形,那么该种情形也可以这样表达:省略
  */


    String traLight = "黄灯";//红灯停,绿灯行,黄灯等待
    if (traLight == "红灯") {

        System.out.println("停下");
    } else if (traLight == "绿灯") {

        System.out.println("通行");
    } else if (traLight == "黄灯") {

        System.out.println("等待");
    }

    //嵌套语句:在某种情形下,内部又可以分化为多种情形

    String rule="靠右行驶";
    if (traLight == "红灯") {
        System.out.println("停下");

    } else if (traLight == "绿灯"){
        System.out.println("同行安全");
    }
    String employee="华为员工";
    String welfare="缴纳五险一金";
    String overall="缴纳五险";
    if(employee=="华为员工"){
        if(welfare=="缴纳五险一金"){
            if(overall=="五险") {
                System.out.println("该公司真是好公司");
            }else {

                System.out.println("该公司好坏呀!");
            }
        }else{
            System.out.println("该公司真黑呀!");
        }

    }

/*
switch case语句
语法结构:
switch(表达式/变量){
case 值1(就是具体的数据):
语句1/代码1;
case 值2(同上):
语句2/代码2;
case 值3(同上):
语句3/代码3;
......
case 值n(同上):
语句n/代码n;
default:
语句n+1/代码n+1;
}
备注:
1. 如果switch(变量)如果要在()放变量需要在switch语句上面先定义或声明出来;
当变量的值等于值1的时候程序就会执行值1冒号后面的内容;
当变量的值等于值2的时候,程序就会执行值2冒号后面的内容;
以此类推下去
当变量的值等于值n的时候,程序会执行值n冒号后面的内容;
当变量的值都不满足以上所有的情形时,程序执行default冒号后面的内容。
2. case后面的值的数据类型要和switch小括号中的(变量)的数据类型保持一致
3. 避免穿透现象,需要使用跳出语句 break 不瑞克 continue
需要显示的声明在case情形语句中的最后一行,通常使用break进行程序的跳出
4. switch(表达式/变量中的值的数据类型可以是以下:
byte short int char string 枚举)
5. case 后面的值不能是不确定的值必须是确定的值。
6. case 情形之间也是一种互斥关系。非你即我
*/
//描述一个人的一生的状态

    String status = "成长期";
    switch (status) {
        case "婴幼期":
            System.out.println("吃奶、、、");
            break;
        case "成长期":
            System.out.println("拥有强烈的好奇");
            break;
        case "成熟期":
            System.out.println("看淡人世间的名与利");
            break;
        case "衰老期":
            System.out.println("走走看看人世间的花花绿绿");
            break;
        case "死亡期":
            System.out.println("保持一颗童心");
            break;
        default:
            System.out.println("长生不老");
    }
原文地址:https://www.cnblogs.com/luayan/p/13893068.html