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日

相关文章

  • maven打包web项目时同时打包为war和jar文件的方法

    以下是在maven项目中同时打包为war和jar文件的方法的攻略: 1. 创建Maven Web项目 首先创建一个Maven Web项目,使用webapp的目录结构,结构如下: └── src ├── main │ ├── java │ ├── resources │ └── webapp │ ├── WEB-INF │ └── index.html └──…

    Java 2023年5月19日
    00
  • springboot jta atomikos实现分布式事物管理

    下面是讲解“springboot jta atomikos实现分布式事物管理”的完整攻略。 简介 分布式事务管理是一个很常见的需求,使用 JTA(Java Transaction API)接口可以比较容易地实现分布式事务管理,而 Atomikos 是一个比较流行的 JTA 事务管理器。 在 Spring Boot 中,我们可以基于 Atomikos 实现分布…

    Java 2023年5月20日
    00
  • Java设计模式之java桥接模式详解

    Java设计模式之java桥接模式详解 什么是Java桥接模式? Java桥接模式是23种常用的设计模式之一,也称为桥梁模式。它是一个两层结构,其中底层定义了实现,而高层定义了抽象。抽象层通过委托调用实现层中的方法,以实现业务需求。这种模式可以将抽象部分与它的实现部分分离,使它们可以独立地变化。 应用场景 Java桥接模式常用于以下场景: 当需要避免使用由于…

    Java 2023年6月16日
    00
  • Springboot Thymeleaf模板文件调用Java类静态方法

    当我们在开发使用Spring Boot框架搭建的Web应用程序时,遇到调用Java类的静态方法的需求时,我们可以通过Thymeleaf模板引擎实现。 Thymeleaf是一种能够处理服务器和客户端模板的Java模板引擎,它能够将HTML模板与数据模型结合起来,生成最终的HTML页面。因此,我们可以在HTML模板文件中调用Java类的静态方法,从而获得更加灵活…

    Java 2023年5月31日
    00
  • Spring Boot详解创建和运行基础流程

    下面是关于”Spring Boot详解创建和运行基础流程”的完整攻略。 简介 Spring Boot是一个快速开发框架,它旨在使开发人员快速轻松地构建基于Spring框架的应用程序。它通过自动化常见的应用程序配置和通用开发任务来减少开发人员的工作量,并使他们能够专注于业务逻辑。 在本文中,我们将学习如何创建和运行基于Spring Boot的应用程序,并创建一…

    Java 2023年5月15日
    00
  • springmvc Rest风格介绍及实现代码示例

    SpringMVC Rest风格介绍及实现代码示例 在Web开发中,REST(Representational State Transfer)是一种架构风格,它提供了一种简单的方式来创建Web服务。SpringMVC框架支持RESTful Web服务的开发,本文将详细介绍SpringMVC Rest风格的实现及代码示例。 Rest风格介绍 REST是一种基于…

    Java 2023年5月17日
    00
  • springboot相关面试题汇总详解

    Spring Boot相关面试题汇总详解 Spring Boot是一个流行的Java框架,可以帮助开发人员快速构建和部署应用程序。在本文中,将详细讲解Spring Boot相关面试题汇总,包括Spring Boot的核心特性、自动配置、启动流程、应用上下文等。 1. 什么是Spring Boot? Spring Boot是一个流行的Java框架,可以帮助开发…

    Java 2023年5月14日
    00
  • 详解如何在springcloud分布式系统中实现分布式锁

    下面是“详解如何在springcloud分布式系统中实现分布式锁”的完整攻略: 一、什么是分布式锁 分布式锁是指多个节点之间共享同一个锁,能够协作完成某一段代码的互斥操作。在分布式系统中使用分布式锁可以实现对共享资源的协调访问,防止多个节点同时对同一资源进行修改而引发数据一致性问题。 二、实现分布式锁的原理 在分布式系统中实现分布式锁需要考虑节点之间的共享和…

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