Java选择结构详解与案例分析

前言:

    选择结构是编程中常用的一种控制流程结构,用于根据条件的真假来决定程序的执行路径。在Java中,选择结构主要包括if语句和switch语句。本文将详细介绍这两种选择结构的基本用法,并通过案例来加深理解。

目录

1.if语句

1.1 基本用法

1.2 多重if语句

1.3 if-else语句

2.switch语句

2.1 基本用法:

2.2case穿透

2.3default语句

3.分支嵌套

4.案例分析

4.1 求解最大值

4.2 判断闰年

4.3 计算BMI指数

5.总结


1.if语句


1.1 基本用法


    if语句用于根据一个条件的真假来决定是否执行一段代码。if语句的基本语法为:

if (条件) {
    // 执行语句
}

    if语句主要有三种形式,如下图所示:

1.2 多重if语句


    如果有多个条件需要判断,可以使用多重if语句。多重if语句的语法为:

if (条件1) {
    // 执行语句1
} else if (条件2) {
    // 执行语句2
} else {
    // 执行语句3
}
1.3 if-else语句


if-else语句用于在条件为真或假时执行不同的代码块。if-else语句的语法为:

if (条件) {
    // 执行语句1
} else {
    // 执行语句2
}

2.switch语句


2.1 基本用法:


switch语句用于根据一个表达式的值,选择执行相应的代码块。switch语句的基本语法为:

switch (表达式) {
    case 值1:
        // 执行语句1
        break;
    case 值2:
        // 执行语句2
        break;
    default:
        // 执行语句3
        break;
}
2.2case穿透


在switch语句中,每个case后面都需要使用break语句来结束当前的代码块。但有时候我们希望多个case执行相同的代码,可以使用case穿透。案例中会详细介绍这种用法。

2.3default语句


如果没有任何一个case匹配到表达式的值,将会执行default语句块中的代码。

3.分支嵌套

    分支嵌套语句是指在一个条件语句内部嵌套了另一个条件语句,也称为嵌套if语句。这种分支结构可以用于处理更复杂的逻辑判断。

   分支中包含分支,如下图所示:

    分支嵌套举例:

int num1 = 10;  
int num2 = 20;  
  
if (num1 > num2) {  
    System.out.println("num1大于num2");  
    if (num1 == 10) {  
        System.out.println("num1等于10");  
    } else {  
        System.out.println("num1不等于10");  
    }  
} else {  
    System.out.println("num1小于等于num2");  
}

    在这个示例中,首先比较了num1和num2的值。如果num1大于num2,我们打印出"num1大于num2",然后嵌套了一个条件语句来判断num1的值是否等于10。如果num1等于10,我们打印出"num1等于10",否则打印出"num1不等于10"。如果num1不大于num2,我们打印出"num1小于等于num2"。

     注意,在使用嵌套if语句时,需要注意缩进和代码的可读性。通常建议将内层的if语句缩进,以使其与外层if语句分开,这样可以使代码更清晰易懂。

4.案例分析


4.1 求解最大值


案例中将演示如何使用if语句来求解两个数的最大值。

输入两个整数,显示两个数中较大的数,如下图所示:

import java.util.Scanner;  
  
public class Main {  
    public static void main(String[] args) {  
        Scanner scanner = new Scanner(System.in);  
        System.out.println("请输入第一个整数:");  
        int num1 = scanner.nextInt();  
        System.out.println("请输入第二个整数:");  
        int num2 = scanner.nextInt();  
        int max = Math.max(num1, num2);  
        System.out.println("较大的数是:" + max);  
    }  
}

这段代码首先创建一个Scanner对象来从用户那里接收输入。然后,我们要求用户输入两个整数。我们使用Math.max()函数来找出这两个数中较大的那一个,然后打印出这个较大的数。

4.2 判断闰年


案例中将演示如何使用switch语句来判断一个年份是否为闰年。

import java.util.Scanner;  
  
public class LeapYear {  
    public static void main(String[] args) {  
        Scanner input = new Scanner(System.in);  
        System.out.print("请输入年份:");  
        int year = input.nextInt();  
        switch (year % 4) {  
            case 0:  
                if ((year % 100 == 0) && (year % 400 != 0)) {  
                    System.out.println(year + "不是闰年");  
                } else {  
                    System.out.println(year + "是闰年");  
                }  
                break;  
            default:  
                System.out.println(year + "是闰年");  
                break;  
        }  
    }  
}

    在这个例子中,我们使用Scanner类从用户输入中获取年份。然后,我们使用switch语句来判断年份是否为闰年。根据闰年的定义,一个年份如果是闰年,那么它必须满足以下条件之一:

  1. 能被4整除但不能被100整除;
  2. 能被400整除。

    我们使用switch语句来判断年份是否能被4整除。如果不能被4整除,直接输出该年份不是闰年。如果能够被4整除,我们需要进一步判断该年份是否能被100整除且不能被400整除。如果满足这个条件,则输出该年份不是闰年;否则,输出该年份是闰年。在每个case语句的末尾,我们使用break语句来结束当前的代码块。

4.3 计算BMI指数


案例中将演示如何使用if-else语句来计算一个人的BMI指数。

import java.util.Scanner;  
  
public class BMI {  
    public static void main(String[] args) {  
        Scanner scanner = new Scanner(System.in);  
        System.out.println("请输入您的体重(kg):");  
        double weight = scanner.nextDouble();  
        System.out.println("请输入您的身高(m):");  
        double height = scanner.nextDouble();  
        double bmi = weight / (height * height);  
          
        if (bmi < 18.5) {  
            System.out.println("您的BMI指数为:" + bmi + ",体重过轻。");  
        } else if (bmi >= 18.5 && bmi < 24.9) {  
            System.out.println("您的BMI指数为:" + bmi + ",体重正常。");  
        } else if (bmi >= 24.9 && bmi < 29.9) {  
            System.out.println("您的BMI指数为:" + bmi + ",体重过重。");  
        } else {  
            System.out.println("您的BMI指数为:" + bmi + ",肥胖。");  
        }  
    }  
}

    在这个程序中,我们使用Scanner类从用户那里获取体重和身高的输入值,然后计算BMI指数。最后使用if-else语句根据BMI指数的值打印出不同的消息,指出这个人的体重状态。

5.总结

    通过本文的学习,我们了解了Java中选择结构的基本用法,并通过案例加深了对选择结构的理解。选择结构是编程中不可或缺的一部分,合理运用选择结构可以使程序更加灵活和高效。

\sin

CSDN质量分数查询地址:https://www.csdn.net/qc

 CSDN - 专业开发者社区\textup{\textup{\textit{}}}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值