如何在 switch case 中使用枚举类

news/2025/3/15 11:46:11/

在JDK 5中加入的枚举Enum类型也是可以作为case值的。
在JDK 7中,又加入了对String类型的支持,从此不用再写If-Else来判断字符串了。

switch的case语句可以处理int,short,byte,char类型的值,
因为short,byte,char都会转换成int进行处理,这一点也可以从生成的字节码看出。

下面举例。如何在switch-case中使用ennum枚举类型:

public class SwitchEnumDemo {public static void main(String[] args) {String type = "type1";switch (Objects.requireNonNull(TypeEnnum.getTypeName(type))) {case TYPE_1:System.out.println("type1----------");break;case TYPE_2:System.out.println("type2----------");break;case TYPE_3:System.out.println("type3----------");break;default:System.out.println("defualt---type----------");}}}

运行结果如下:

type定义枚举类如下:
```javascript
public enum TypeEnnum {TYPE_1("type1", "类型1"),TYPE_2("type2", "类型2"),TYPE_3("type3", "类型3"),;TypeEnnum(String type, String desc) {this.type = type;this.desc = desc;}private String type;private String desc;public String getType() {return type;}public String getDesc() {return desc;}public static TypeEnnum getTypeName(String type){for(TypeEnnum transactType : values()){if (transactType.getType().equals(type)) {//获取指定的枚举return transactType;}}return null;}
}

注意枚举类中需要以下方法:

public static TypeEnnum getTypeName(String type){for(TypeEnnum transactType : values()){if (transactType.getType().equals(type)) {//获取指定的枚举return transactType;}}return null;}

否则会报如下错误,识别不出枚举类型:
在这里插入图片描述


http://www.ppmy.cn/news/202508.html

相关文章

iOS第三方框架

图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进行缩放等操作。 下载:https://github.com/mwaterfall/MWPho…

常用iOS的第三方框架

图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进行缩放等操作。 下载:https://github.com/mwaterfall/MWPho…

史上最全的常用iOS的第三方框架

文章来源:http://blog.csdn.net/sky_2016/article/details/45502921 图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓…

iOS 常用第三方开源框架介绍

//联系人:石虎 QQ: 1224614774昵称:嗡嘛呢叭咪哄 文章转自:http://blog.csdn.NET/xiaoyuertongxue/article/details/46982879 图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是…

史上最全的开源库整理

图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进行缩放等操作。 下载:https://github.com/mwaterfall/MWPho…

iOS开发-常用第三方开源框架介绍(你了解的ios只是冰山一角)

图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并进行缓存。可对图片进行缩放等操作。 下载:https://github.com/mwaterfall/MWPho…

ObjC开发-常用第三方开源框架介绍

iOS开发-常用第三方开源框架介绍(你了解的ios只是冰山一角),ios冰山一角 图像: 1.图片浏览控件MWPhotoBrowser 实现了一个照片浏览器类似 iOS 自带的相册应用,可显示来自手机的图片或者是网络图片,可自动从网络下载图片并…

iOS常用第三方库

下面是一些比较流行的第三方库:UITableView组件化库 M80TableViewComponent (0.1.0)HTTP 相比较之下,AFNetworking是目前最优秀的一个了:轻量、易用、使用者多、开发者有在积极维护。在AFN出现之前,这个角色是由ASIHTTPRequest扮演的&#x…