时间:2021-05-20
今天改同事的代码发现同事的代码中有大量的if else语句。很不美观而且可读性太差。
因为需要给前端一个key,value的列表。这个列表写死。然而同事的代码。
放几张图,大家自己感受。我都不知道以后这个api咋维护,新增一个工站,减少一个工站。
果然新的任务新增4个工站,好吧,开始给代码装扮一下。
首先,写一个枚举类。
package com.smartflow.common.enumpackage;/** * @author :tao * @date :Created in 2020/8/1 22:51 * @description:${description} */public enum StationEnum { /** * */ STATION_PRODUCTION(1,"生产工站"), STATION_TEST(2,"测试工站"), STATION_FIX(3,"维修工站"), STATION_VIRTUAL(4,"虚拟工站"), STATION_MATERIAL(5,"上料工站"), STATION_CRASH(6,"清洗工站"), STATION_PAK(7,"配送工站"); private final int key; private final String value; StationEnum(int key, String value) { this.key = key; this.value = value; } public int getKey() { return key; } public String getValue() { return value; }}然后这个是获取工站的列表,看吧你几乎看不到重复的new map,或者是魔法值。对比一下上边的是不是很美观。
/** *获取工站类型列表 * @return 工站类型列表 */private List<Map<String,Object>>getStationTypeList(){ List<Map<String, Object>> stationTypeList = new ArrayList<>(); for (StationEnum stationEnum:StationEnum.values()) { Map<String, Object> stationType = new HashMap<>(2); stationType.put("key", stationEnum.getKey()); stationType.put("label", stationEnum.getValue()); stationTypeList.add(stationType); } return stationTypeList;}接着根据工站id也就是key查找工站名
/** * 根据key值查找工站名 * @param key key值 * @return 返回攻占名 */private String getStationLabel(int key){ for (StationEnum stationEnum:StationEnum.values()) { if (stationEnum.getKey()==key) { return stationEnum.getValue(); } } return "测试工站";}可以看到几行代码就搞定了。而且代码重用性高,可维护性好。想添加工站或者减少工站直接在枚举类型中改变就可以了。不用修改大量的代码。
到此这篇关于Java中枚举类型的一种使用方式的文章就介绍到这了,更多相关Java中枚举类型使用方式内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
枚举类型的定义:枚举类型(enumeration)是C++中的一种派生数据类型,它是由用户定义的若干枚举常量的集合。定义格式:枚举类型的定义格式为:enum{}
今天来分享下如何管理PHP的枚举类型。一种常见的方式是,使用常量来代表枚举类型constYES='是';constNO='否';可以在这个基础上更进一步,将其封
1、使用JPA的@Enumerated注解,可以直接将Enum映射到数据库中。但是value的值只有两种方式选择,一种是使用枚举的序号映射,一种是枚举的名称来映
枚举常量与宏的区别主要有几点:1。枚举常量是实体中的一种,但宏不是实体;2。枚举常量属于常量,但宏不是常量;3。枚举常量具有类型,但宏没有类型,枚举变量具有与普
正文一概述枚举类型是JDK5之后引进的一种非常重要的引用类型,可以用来定义一系列枚举常量,使用enum来表示枚举可以更好地保证程序的类型安全和可读性实际上在使用