Java枚举类型在switch语句中的正确用法
时间:2020-06-30
本文章向大家介绍
Java枚举类型在switch语句中的正确用法
,主要包括
Java枚举类型在switch语句中的正确用法
使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
很多人也许会尝试写下这样的代码:
ResultStructureEnum type = ResultStructureEnum.valueOf(userType);
switch (type) {
case ResultStructureEnum.STUDENT:
...
break;
case ResultStructureEnum.TEACHER:
...
break;
case ResultStructureEnum.PARENT:
...
break;
...
}
# 这样编译不会通过,提示case后必须是一个常量
正确的写法:
ResultStructureEnum type = ResultStructureEnum.valueOf(userType);
switch (type) {
case STUDENT:
...
break;
case TEACHER:
...
break;
case PARENT:
...
break;
...
}
# 即在 case 后面可以直接写枚举类型,不用加枚举类的类名。
如果需要根据类型的名称返回枚举实例,可以在枚举类中加入方法
/**
* 根据统计编号获取对应枚举实例
*
* @param statNo
* @return
*/
public static ResultStructureEnum getStructureEnum(String statNo) {
if (StringUtils.isBlank(statNo)) {
return null;
}
for (ResultStructureEnum result : ResultStructureEnum.values()) {
if (result.statNo.equals(statNo)) {
return result;
}
}
return null;
}
原文地址:https://www.cnblogs.com/zhufanfan/p/13213426.html
- 使用Anaconda搭建TensorFlow-GPU环境
- google gflag使用方法举例
- caffe源码学习之Proto数据格式【1】
- 降维之pca算法
- 聚类之dbscan算法
- ubuntu 使用sudo apt-get update 出现 被配置多次导致无法升级错误解决方法
- morestack与goroutine pool
- 关于python使用threadpool中的函数单个参数和多个参数用法举例
- python科学计算之numpy
- 关于python使用cv画矩形并填充颜色同时填充文字
- Go语言入门基础
- 【前端编程】加载第三方JS的各种姿势
- ubuntu16中遇到libgstreamer-0.10.so.0缺失解决方案
- 关于文件的压缩与解压
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- Mac安装软件提示 已损坏【已解决】
- 机器学习之sklearn基础教程!
- 2020最新版 maven for MAC 安装及配置
- jemter安装(win/mac)并快捷启动的方法
- nmap 详解版-指令使用方法大全【含安装】
- 常见6种WAF绕过和防护原理
- 2020-mac 安装jdk1.8
- AWVS acunetix_WVS13的基础使用
- 为啥PHP in_array(0,['a', 'b', 'c']) 返回为true?
- docker安装伏羲扫描器fuxi-scanner
- 基于深度学习的文本分类应用!
- 表驱动法
- mysql将表结构导出excel
- 为什么会是Docker?
- 浅析http报文