Java switch 对数字、字符、枚举、字符串类型的支持

简介: 本文目录1. 概述2. switch使用枚举3. switch使用常量

1. 概述

首先说明,Java switch(x)中的x到底是否支持数字、字符、枚举、字符串类型,跟JDK的版本是相关的。


数字和字符,其实差不多事情,都是一直支持的。


从JDK1.5开始,支持枚举了,然后从JDK1.7开始,也支持String了。


当然,因为还有很多系统用经典的JDK1.6,所以最好别采用String作为参数,以免自找麻烦。


OK,使用数字和字符又有点太抽象了,所以建议使用枚举,如果觉得枚举太麻烦,还可以使用常量,以下分别举例哈。


2. switch使用枚举

直接上例子:

package org.maoge.demo;
/**
 * Description:Switch参数为枚举类型的例子 枚举类型
 * date:2017.10.18
 * @author maoge
 */
public enum UserType {
  STUDENT,TEACHER,ADMIN;
}
package org.maoge.demo;
/**
 * Description:Switch参数为枚举类型的例子
 * date:2017.10.18
 * @author maoge
 */
public class SwitchEnumDemo {
  public static void main(String[] args){
    System.out.println("It begins");
    UserType ut=UserType.TEACHER;
    switch(ut){
      case STUDENT:
        System.out.println("按学生处理");
        break;
      case TEACHER:
        System.out.println("按老师处理");
        break;
      case ADMIN:
        System.out.println("按管理员处理");
        break;
    }
  }
}

3. switch使用常量

package org.maoge.demo;
/**
 * Description:Switch参数为常量类型的例子 注意接口中的静动态常量可以直接通过接口名调用 此处UserTypeConstant也可以定义为类
 * date:2017.10.18
 * @author maoge
 */
public interface UserTypeConstant {
  final static int STUDENT=1;
  final static int TEACHER=2;
  final static int ADMIN=3;
}
package org.maoge.demo;
/**
 * Description:Switch参数为常量类型的例子
 * date:2017.10.18
 * @author maoge
 */
public class SwitchConstantDemo {
  public static void main(String[] args) {
    int type=UserTypeConstant.ADMIN;
    switch(type){
      case UserTypeConstant.STUDENT:
        System.out.println("按学生处理");
        break;
      case UserTypeConstant.TEACHER:
        System.out.println("按老师处理");
        break;
      case UserTypeConstant.ADMIN:
        System.out.println("按管理员处理");
        break;
    }
  }
}
相关文章
|
1月前
|
自然语言处理 Java
Java中的字符集编码入门-增补字符(转载)
本文探讨Java对Unicode的支持及其发展历程。文章详细解析了Unicode字符集的结构,包括基本多语言面(BMP)和增补字符的表示方法,以及UTF-16编码中surrogate pair的使用。同时介绍了代码点和代码单元的概念,并解释了UTF-8的编码规则及其兼容性。
108 60
|
3月前
|
SQL Java 索引
java小工具util系列2:字符串工具
java小工具util系列2:字符串工具
171 83
|
29天前
|
Java
Java中的控制流语句:if、switch、for、foreach、while、do-while
Java中的控制流语句包括条件判断语句 `if`和 `switch`,以及循环语句 `for`、增强型 `for`(`foreach`)、`while`和 `do-while`。这些语句提供了灵活的方式来控制程序的执行流程,确保代码逻辑清晰且易于维护。掌握这些基本语法,对于编写高效和可读的Java程序至关重要。
56 15
|
3月前
|
存储 安全 Java
Java零基础-字符串详解
【10月更文挑战第18天】Java零基础教学篇,手把手实践教学!
124 60
|
3月前
|
Java 数据库
java小工具util系列1:日期和字符串转换工具
java小工具util系列1:日期和字符串转换工具
76 26
|
3月前
|
Java
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
java小工具util系列4:基础工具代码(Msg、PageResult、Response、常量、枚举)
75 24
|
3月前
|
存储 缓存 安全
java 中操作字符串都有哪些类,它们之间有什么区别
Java中操作字符串的类主要有String、StringBuilder和StringBuffer。String是不可变的,每次操作都会生成新对象;StringBuilder和StringBuffer都是可变的,但StringBuilder是非线程安全的,而StringBuffer是线程安全的,因此性能略低。
104 8
|
3月前
|
Java
java switch case多个条件
通过本文的介绍,我们详细探讨了Java中 `switch case`语句的多种用法和优化方法。从基本语法到合并多个条件,再到使用枚举、常量和函数优化,`switch case`语句在Java编程中提供了一种灵活且高效的控制流方式。掌握这些技巧,能够编写出更加简洁、可读性强的代码,提高开发效率和代码质量。希望本文能为您在实际开发中提供有价值的参考和指导。
231 2
|
3月前
|
缓存 算法 Java
本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制
在现代软件开发中,性能优化至关重要。本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制。通过调整垃圾回收器参数、优化堆大小与布局、使用对象池和缓存技术,开发者可显著提升应用性能和稳定性。
68 6
|
Java
【Java】switch 是否能作用在 byte 上,是否能作用在 long 上,是否能作用在 String 上
【Java】switch 是否能作用在 byte 上,是否能作用在 long 上,是否能作用在 String 上
176 0

热门文章

最新文章