Java中switch的三种用法方式小结

下面是Java中switch的三种用法方式小结的详细讲解:

标准的switch语句

switch (expression) {
    case value1:
        // 如果expression的值等于value1,则执行此处代码
        break;
    case value2:
        // 如果expression的值等于value2,则执行此处代码
        break;
    default:
        // 如果expression的值都不等于以上任何一个case的值,则执行此处代码
}

在标准的switch语句中,需要一个expression作为比较的基准,比较的值必须是char、byte、short、int或enum类型。每个case后面的值与expression进行比较,如果相等,则执行相应的代码块。如果没有任何一个case值与expression相等,则会执行default后面的代码块。

示例1:

int day = 2;
switch (day) {
    case 1:
        System.out.println("星期一");
        break;
    case 2:
        System.out.println("星期二");
        break;
    case 3:
        System.out.println("星期三");
        break;
    default:
        System.out.println("不存在的日期");
}

输出:

星期二

示例2:

enum Gender { MALE, FEMALE, UNKNOWN }
Gender gender = Gender.MALE;
switch (gender) {
    case MALE:
        System.out.println("男");
        break;
    case FEMALE:
        System.out.println("女");
        break;
    default:
        System.out.println("不确定");
}

输出:

用于字符串的switch语句

switch (stringExpression) {
    case stringValue1:
        // 如果stringExpression的值等于stringValue1,则执行此处代码
        break;
    case stringValue2:
        // 如果stringExpression的值等于stringValue2,则执行此处代码
        break;
    default:
        // 如果stringExpression的值都不等于以上任何一个case的值,则执行此处代码
}

在Java SE 7和更高版本中,可以使用字符串在switch语句中进行比较。

示例:

String fruit = "苹果";
switch (fruit) {
    case "苹果":
        System.out.println("红皮");
        break;
    case "香蕉":
        System.out.println("黄皮");
        break;
    default:
        System.out.println("未知类型");
}

输出:

红皮

无条件执行一个代码块

switch (expression) {
    case value1:
    case value2:
        // 如果expression的值等于value1或value2,则执行此处代码
        break;
}

在某些情况下,我们只需要在expression等于某几个值时执行同一个代码块,这个时候可以使用无条件执行一个代码块的形式。case value1和case value2两条语句都将执行同一个代码块,直到遇到break语句或者代码块结束。

示例:

int number = 35;
switch (number) {
    case 10:
    case 20:
    case 30:
        System.out.println("这个数字是10、20或30");
        break;
    default:
        System.out.println("这个数字不是10、20或30");
}

输出:

这个数字不是10、20或30

以上就是Java中switch的三种用法方式小结的攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java中switch的三种用法方式小结 - Python技术站

(0)
上一篇 2023年5月26日
下一篇 2023年5月26日

相关文章

  • SpringBoot多数据源配置的全过程记录

    下面是详细讲解“SpringBoot多数据源配置的全过程记录”的完整攻略。 概述 在实际开发中,我们很可能需要同时连接多个数据库,例如连接MySQL和Redis等。SpringBoot的多数据源配置能够满足我们这一需求。本文将详细记录SpringBoot多数据源配置的全过程。 步骤 1. 添加依赖 在pom.xml文件中添加以下依赖: <!– MyB…

    Java 2023年6月3日
    00
  • 详细图解Java中字符串的初始化

    为了详细讲解“详细图解Java中字符串的初始化”的完整攻略,我会按照以下步骤进行: 1. 什么是字符串? 在Java中,字符串是一个对象,用来表示一组字符序列(包括字母、数字、符号等)。Java字符串使用Unicode字符编码,并且是不可变的对象,也就是说,它的值无法被更改。 2. 字符串的初始化方式 Java中有多种方式可以初始化字符串。下面介绍最常用的四…

    Java 2023年5月26日
    00
  • ES6 Symbol数据类型的应用实例分析

    ES6 Symbol 数据类型的应用实例分析 Symbol 是 ES6 新增的数据类型,用于表示独一无二的值。它经常被用于表示对象的私有属性,也可以用于定义对象的方法。本文将详细讲解 Symbol 数据类型的应用实例。 1. 定义对象的私有属性 JavaScript 中没有原生的私有属性的概念,但是使用 Symbol 数据类型可以模拟出私有属性的效果。下面是…

    Java 2023年5月26日
    00
  • java简单解析xls文件的方法示例【读取和写入】

    Java简单解析XLS文件的方法示例:读取和写入 1. 概述 XLS是一种Microsoft Excel电子表格文件格式,是常见的办公文档,需要在Java程序中对其进行处理和解析。本文将介绍Java中读取和写入XLS文件的方法,包括使用Apache POI库读取和写入XLS文件。 2. 使用Apache POI库读取XLS文件 Apache POI是一款用于…

    Java 2023年5月20日
    00
  • Java的Struts框架报错“InvalidScopeException”的原因与解决办法

    当使用Java的Struts框架时,可能会遇到“InvalidScopeException”错误。这个错误通常由以下原因之一起: 配置错误:如果配置文件中没有正确配置作用域,则可能会出现此。在这种情况下,需要检查配置文件以解决此问题。 作用域名称错误:如果作用域名称不正确,则可能会出现此。在这种情况下,需要检查作用域名称以解决此问题。 以下是两个实例: 例 …

    Java 2023年5月5日
    00
  • java查找文件夹下最新生成的文件的方法

    要查找一个文件夹下最新生成的文件,可以使用Java中的File类和Stream API。以下是步骤列表: 用File类打开文件夹(也可以是目录): File folder = new File("path/to/folder"); 获取文件夹下所有的文件, File[] files = folder.listFiles(); 按照文件名进…

    Java 2023年5月20日
    00
  • boot-admin整合Liquibase实现数据库版本管理

    Liquibase 和 Flyway 是两款成熟的、优秀的、开源/商业版的数据库版本管理工具,鉴于 Flyway 的社区版本对 Oracle 数据库支持存在限制,所以 boot-admin 选择整合 Liquibase 提供数据库版本管理能力支持。Liquibase 开源版使用 Apache 2.0 协议。 Liquibase的适用情形? 在你的项目进行版本…

    Java 2023年5月5日
    00
  • Java安全之Tomcat6 Filter内存马问题

    我们来讲一下Java安全之Tomcat6 Filter内存马问题的完整攻略。 什么是Tomcat6 Filter内存马问题 Tomcat6是一个流行的Web服务器,它使用过滤器(Filter)来处理HTTP请求。但是,Tomcat6过滤器存在一个安全漏洞,即攻击者可以创建恶意过滤器,将恶意代码注入内存并产生后门。这就是所谓的Tomcat6 Filter内存马…

    Java 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部