很多人也许会尝试写下这样的代码:

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;

}

java case 枚举_Java枚举类型在switch语句中的正确用法相关推荐

  1. 【Java面试题】定义枚举类型Weekday,使用枚举类型配合switch语句,尝试如下功能:

    定义枚举类型Weekday,使用枚举类型配合switch语句,尝试如下功能: wd = Mon是输出"Do Monday work",wd = Tue时,输出"Do Mo ...

  2. Think in java(四)枚举类enum的基本特性、构造方法与方法覆盖、Switch语句中的enum运用

    一.基本enum特性 package test;enum Fruit{PEACH,LEMON,BANANA,Apple}public class EnumClasstest {public stati ...

  3. java enum 随机_Java 枚举(enum)

    1.枚举(enum) enum是一个特殊的类,代表一组常量(不可更改的变量,如,final变量). 要创建enum,请使用enum关键字(而不是类或接口),并用逗号分隔常量.请注意,它们应使用大写字母 ...

  4. Go 学习笔记(62)— Go 中 switch 语句中的 switch 表达式和 case 表达式之间的关系

    switch 语句对 switch 表达式的结果类型,以及各个 case 表达式中子表达式的结果类型都是有要求的. 毕竟,在 Go 语言中,只有类型相同的值之间才有可能被允许进行判等操作. 1. sw ...

  5. Java SE7新特性之switch语句中使用字符串

    2019独角兽企业重金招聘Python工程师标准>>> 在JDK 7发布版本中, 可以在switch语句的表达式中使用String对象: public String getTypeO ...

  6. 在switch语句中,case后的标号只能是什么?

    switch语句用于基于不同条件执行不同动作. 语法格式: switch (变量表达式) { case 常量1: 语句;break; case 常量2: 语句;break; case 常量3: 语句; ...

  7. break在java语言中什么意思_在Java语言的控制结构中,break语句是经常用到的语句。在switch语句中break语句的作用是( )_学小易找答案...

    [单选题]( )是一个综合性的网络营销工具,在所有的网络营销工具中也是最基本.最重要的一个. [单选题]给出下列的代码,哪行在编译时可能会有错误( ) 1 public static void mai ...

  8. Java—输入数字星期,输出英文(switch语句)

    Java-输入数字星期,输出英文(switch语句) Description 从键盘上输入数字星期,然后输出它的英文. 其对应关系是: 1 Monday 2 Tuesday 3 Wednesday 4 ...

  9. switch语句中在case块里声明变量会遇到提示“Expected expression before...的问题

    switch语句中在case块里声明变量会遇到提示"Expected expression before..."的问题 例如在如下代码中 1 case constant: 2 in ...

最新文章

  1. stl vector 函数_vector :: at()函数以及C ++ STL中的示例
  2. Mysql索引是有序的吗_mysql组合索引的有序性转
  3. 32位存储环境下整数范围为什么是[-2^31,2^31-1]?
  4. CSRF:跨站请求伪造
  5. Kingsoft AntiVirus(金山毒霸) and av-comparatives organization
  6. note同步不及时 one_Win10上OneNote 2016同步老出问题?解决方法送上
  7. [Android] charles高级使用总结
  8. Thymeleaf模板的使用
  9. HDU 3037 Saving Beans [Lucas定理]
  10. [转] 丢了自己,要记得找回了~~我们80后的那些忧伤
  11. JavaScript函数赋值变量
  12. 最详细的L298N模块使用说明
  13. matlab分析傅里叶级数
  14. 云盘万能钥匙插件(无需输入网盘提取密码)
  15. Selenium自动化测试设计模式-PO模式
  16. 魔兽地图编辑器--人物自定义语音的方法和进入游戏自定义语音不能播放的问题
  17. mathmatica中ListLinePlot函数画图不能混合是咋回事啊
  18. ipados链接android,iPadOS怎么升级 iPadOS升级教程
  19. CSR867x — 如何修改BLE的蓝牙地址
  20. 服务器被劫持了,该怎么办?

热门文章

  1. JS 返回上一页判断
  2. PFSI 开源啦,欢迎您来贡献您的代码
  3. Python将PPT中所有文本框里的文字提取出来
  4. 软件获取手机的ime权限_【手机软件】安卓网易云随机热评v1.0 获取热门评论句子...
  5. 数据清洗:异常值识别和处理方法
  6. Ceph MDS 处理客户端删除目录操作源码分析
  7. 退休了,2600元的退休金高吗?
  8. 《Sibelius 脚本程序设计》连载(二十) - 2.7 条件语句
  9. android节日祝福短信,Android-节日短信送祝福(UI篇)
  10. Android获取相册地址适配,android 7.0+ FileProvider 访问隐私文件 相册、相机、安装应用的适配...