1.枚举当做key-value业务使用

 package com.uwillbe.pad.enums;

 import java.util.ArrayList;
import java.util.List; /**
* @Author: 姿势帝
* @Description:
* @Date: Create in 14:36 2019/1/27
*/
public enum GroupEnum {
/**
* 分组id与分组名称
*/
GROUP_1(1, "物化历"),
GROUP_2(2, "物化地"),
GROUP_3(3, "物生历"),
GROUP_4(4, "物政历"),
GROUP_5(5, "物历地"),
GROUP_6(6, "物生政"),
GROUP_7(7, "物生地"),
GROUP_8(8, "物政地"),
GROUP_9(9, "物化政"),
GROUP_10(10, "物化生"),
GROUP_11(11, "化生历"),
GROUP_12(12, "化政历"),
GROUP_13(13, "化生政"),
GROUP_14(14, "化政地"),
GROUP_15(15, "化历地"),
GROUP_16(16, "化生地"),
GROUP_17(17, "生历地"),
GROUP_18(18, "生政地"),
GROUP_19(19, "生政历"),
GROUP_20(20, "政历地"); /** 枚举值 */
private final Integer code; /** 枚举描述 */
private final String message; /**
* 构造方法
* @param code
* @param message
*/
GroupEnum(Integer code, String message) {
this.code = code;
this.message = message;
} public Integer getCode() {
return code;
} public String getMessage() {
return message;
} /**
* 通过code获取msg
*
* @param code 枚举值
*
* @return
*/
public static String getMsgByCode(Integer code) {
if (code == null) {
return null;
}
GroupEnum enumList = getByCode(code);
if (enumList == null) {
return null;
}
return enumList.getMessage();
} /**
* 通过枚举<code>code</code>获得枚举
*
* values() 方法将枚举转变为数组
*
* @return AuthGradeEnum
*/
public static GroupEnum getByCode(Integer code) {
for (GroupEnum enumList : values()) {
if (enumList.getCode().equals(code)) {
return enumList;
}
}
return null;
} /**
* 获取全部枚举
*
* @return List<AuthGradeEnum>
*/
public static List<GroupEnum> getAllEnum() {
List<GroupEnum> list = new ArrayList<>(values().length);
for (GroupEnum enumList : values()) {
list.add(enumList);
}
return list;
} /**
* 获取全部枚举值
*
* @return List<String>
*/
public static List<Integer> getAllEnumCode() {
List<Integer> list = new ArrayList<>(values().length);
for (GroupEnum enumList : values()) {
list.add(enumList.getCode());
}
return list;
} }

enum-枚举当做key-value业务使用的更多相关文章

  1. Python enum 枚举 判断 key(键) 或者 value(值)是否在枚举中

    Python enum 枚举 判断 key(键) 或者 value(值)是否在枚举中 python 的基本用法请浏览:https://www.cnblogs.com/ibingshan/p/98564 ...

  2. C#的Enum——枚举

    枚举 枚举类型声明为一组相关的符号常数定义了一个类型名称.枚举用于“多项选择”场合,就是程序运行时从编译时已经设定的固定数目的“选择”中做出决定. 枚举类型(也称为枚举)为定义一组可以赋给变量的命名整 ...

  3. MVC3不能正确识别JSON中的Enum枚举值

    一.背景 在MVC3项目里,如果Action的参数中有Enum枚举作为对象属性的话,使用POST方法提交过来的JSON数据中的枚举值却无法正确被识别对应的枚举值. 二.Demo演示 为了说明问题,我使 ...

  4. Python中模拟enum枚举类型的5种方法分享

    这篇文章主要介绍了Python中模拟enum枚举类型的5种方法分享,本文直接给出实现代码,需要的朋友可以参考下   以下几种方法来模拟enum:(感觉方法一简单实用) 复制代码代码如下: # way1 ...

  5. 获取Enum枚举值描述的几法方法

    原文:获取Enum枚举值描述的几法方法 1.定义枚举时直接用中文 由于VS对中文支持的很不错,所以很多程序员都采用了此方案. 缺点:1.不适合多语言 2.感觉不太完美,毕竟大部分程序员大部分代码都使用 ...

  6. 集合 enum 枚举 简介 案例 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  7. Enum枚举的使用实现

    业务中涉及到的状态字段或者简单的选择项的使用. 例如: 1.定义enum枚举类. package com.yjl.enums; import java.util.Objects; public enu ...

  8. Java Enum枚举 遍历判断 四种方式(包括 Lambda 表达式过滤)

    示例代码如下: package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date ...

  9. C enum(枚举)

    C enum(枚举) 枚举是 C 语言中的一种基本数据类型,它可以让数据更简洁,更易读. 枚举语法定义格式为: enum 枚举名 {枚举元素1,枚举元素2,……}; 接下来我们举个例子,比如:一星期有 ...

  10. c# (ENUM)枚举组合类型的谷歌序列化Protobuf

    c# (ENUM)枚举组合类型的谷歌序列化Protobuf,必须在序列化/反序列化时加上下面: RuntimeTypeModel.Default[typeof(Alarm)].EnumPassthru ...

随机推荐

  1. python-requests模块的讲解和应用

    在WINDOWS上可以通过命令行窗口(运行cmd命令), 利用pip进行自动地安装--------pip install requests 1.向网站发送请求:requests.get(url) 2. ...

  2. ubuntu高版本如何设置开机启动脚本

    ubuntu-18.04不能像ubuntu14一样通过编辑rc.local来设置开机启动脚本 可以通过下列简单设置后,可以使rc.local重新发挥作用. 1.建立rc-local.service文件 ...

  3. 【Linux】【Maven】Linux下安装和配置Maven

    创建maven的文件夹并下载maven的tar包到此文件夹中 //进入一个目录 cd /usr/local//创建一个文件夹 mkdir maven//下载maven的tar包 wget http:/ ...

  4. 【Excel技能】字符串包含某字符串个数?替换许多组字符串?

    =len(单元格A)-len(substitute(单元格A,某字符串,)) 原理:将某字符串替换成空,前后字符串长即为减去的这个字符串长度,这个字符串出现个数=前后字符串长度之差/这个字符串长度 = ...

  5. web:频繁刷新浏览器的页面【小工具】

    [目的] 频繁刷新某一浏览器页面,小测试一下加载性能,或者打开的文件是否及时关闭,会不会导致服务器奔溃 [小工具] 新建txt,输入以下内容,并保存为html的格式,然后在浏览器中打开,则会定时刷新指 ...

  6. Xcode OpenGL ES Frame Capture的使用

    一.使用背景 近期在Xcode中使用OpenGL ES 2.0实现一些效果,刚开始存在一些性能问题(CPU和GPU),幸运的是Xcode中自带了免费的性能工具Instruments,其中包含OpenG ...

  7. requestAnimFrame动画兼容性封装

    window.requestAnimFrame=function(){ return window.requestAnimationFrame ||window.webkitRequestAnimat ...

  8. hadoop动态添加删除节点datanode及恢复

    1. 配置系统环境 主机名,ssh互信,环境变量等 本文略去jdk安装,请将datanode的jdk安装路径与/etc/hadoop/hadoop-evn.sh中的java_home保持一致,版本ha ...

  9. VS2017创建一个 ASP.NET Core2.0 应用,并搭建 MVC 框架

    https://testerhome.com/topics/11747 1.使用最新版本的VS2017,并安装.NET Core2.0中相关开发工具   2.打开VS2017,点击文件-新建-项目,选 ...

  10. 最详细安装Esxi

    https://www.vmware.com/cn/products/vsphere-hypervisor.html Exsi 是一款虚拟化系统,与VMware,VirtualBox不同,它不需要安装 ...