# Java 的基础知识(二)

# 前言

本文主要介绍 java 的分支结构。

java 的分支结构主要有两种, if语句switch语句

# if... 语句

一个 if...语句 包含一个布尔表达式和执行语句块。

基本形式如下:

if(布尔表示式){
    // 布尔表达式结果为 true 时执行的语句块
}
// 当执行语句只有一句时,也可以写成以下形式
if(布尔表达式) 一条执行语句;
// 但是,不管只有一条语句还是存在多条,都推荐使用带 {} 的格式,能够更好地体现代码层级关系

案例展示

public class Main{
    public static void main(String args[]){
        int age = 22;
        if(age >= 18){
            System.out.println("我已经成年了");
        }
    }
}
/* 运行结果
我已经成年了
*/

# if...else... 语句

if... 语句后面可以跟 else... 语句,当 if... 语句的布尔表达式值为 false 时,else 语句块会被执行。

基本形式如下:

if(布尔表达式){
    // 布尔表达式结果为 true 时执行的语句块
}else{
    // 布尔表达式结果为 false 时执行的语句块
}

案例展示

public class Main{
    public static main(String args[]){
        int age = 15;
        if(age >= 18){
            System.out.println("我已经成年了");
        }else{
            System.out.println("我还未成年");
        }
    }
}
/* 运行结果
我还未成年
*/

# if...else if...else... 语句

当简单的 是否 满足不了需求时,就可以使用 else if... 语句来扩充分支。

基本形式如下:

if(布尔表达式1){
    // 布尔表达式 1 结果为 true 时执行的语句块
}else if(布尔表达式2){
    // 布尔表达式 2 结果为 true 时执行的语句块
}
······
else if(布尔表达式n){
    // 布尔表达式 n 结果为 true 时执行的语句块
}else{
    // 前面所有布尔表达式结果均为 false 时执行的语句块
}

案例展示

public class Main{
    public static main(String args[]){
        int age = 30;
        if(age == 30){
            System.out.println("而立之年");
        }else if(age == 40){
            System.out.println("不惑之年");
        }else if(age == 50){
            System.out.println("知命之年");
        }else if(age == 60){
            System.out.println("耳顺之年");
        }else if(age == 70){
            System.out.println("古稀之年");
        }else{
            System.out.println("不知几年");
        }
    }
}
/* 运行结果
而立之年
*/

# 嵌套的 if... 语句

当我们想对一个分支继续分出更多小的分支时,就可以使用嵌套的 if... 语句。

基本形式如下:

if(布尔表达式1){
    if(布尔表达式2){
        // 布尔表达式 2 结果为 true 时执行的语句块
    }else{
        // 布尔表达式 1 结果为 true,布尔表达式 2 结果为 false 时执行的语句块
    }
}else{
	// 布尔表达式 1 结果为 false 是执行的语句块
}
// 以上只是简单介绍基本的嵌套方式,使用时可以根据实际场景进行随意组合嵌套

案例展示

public class Main{
    public static main(String args[]){
        int rmb = 100;
        if(rmb >= 50){
            if(rmb != 50){
                System.out.println("这是一张一百");
            }else{
                System.out.println("这是一张五十");
            }
        }else{
            if(rmb < 20){
                if(rmb >= 5){
                    if(rmb != 5){
                        System.out.println("这是一张十元");
                    }else{
                        System.out.println("这是一张五元");
                    }
                }else{
                    System.out.println("这是一张一元");
                }
            }else{
                System.out.println("这是一张二十");
            }
        }
    }
}
/* 运行结果
这是一张一百
*/

# switch 语句

swith语句 是由一个控制表达式和多个 case 标签组成,当控制表达式值与某个 case 后的常量相等时,执行 case 后的语句。每个 case 为一个分支。

基本形式为:

switch(expression){
    case value1 :
       // 语句或函数
       break; // 可省略,省略时将依次执行下一个 case 语句后的语句,直到遇到 break 或没有 case 语句,才退出 switch
    case value2 :
       // 语句或函数
       break;
    // 任意数量的 case 语句
    default : // 表示当前面的 case 都不满足时执行,可省略
       // 语句或函数
}

使用 switch 需遵循如下规则:

  • switch 语句中的变量类型只能为 byteshortint 或者 char 。从 Java SE 7 开始, switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。
  • switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号。
  • case 语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字面常量。
  • 当变量的值与 case 语句的值相等时,那么 case 语句之后的语句开始执行,直到 break 语句出现才会跳出 switch 语句。
  • 当遇到 break 语句时, switch 语句终止。程序跳转到 switch 语句后面的语句执行。case 语句不必须要包含 break 语句。如果没有 break 语句出现,程序会继续执行下一条 case 语句,直到出现 break 语句。
  • switch 语句可以包含一个 default 分支,该分支必须是 switch 语句的最后一个分支。 default 在没有 case 语句的值和变量值相等的时候执行。 default 分支不需要 break 语句。

案例展示

public class Main{
    public static main(String args[]){
        int level = 1;
        switch(level){
            case 1 : 
                System.out.println("耗能低"); 
                break;
            case 2 : 
                System.out.println("中等"); 
                break;
            default : 
                System.out.println("耗能高"); 
        }
    }
}
/* 运行结果
耗能低
*/
更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

深坑妙脆角 微信支付

微信支付

深坑妙脆角 支付宝

支付宝

深坑妙脆角 贝宝

贝宝