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. js中的面向对象--类似于类的概念

    创建对象的几种常用方式 1.使用Object或对象字面量创建对象 2.工厂模式创建对象 3.构造函数模式创建对象 4.原型模式创建对象 1.使用Object或对象字面量创建对象 使用object va ...

  2. Java Swing类 颜色、按键状态判断例子代码

    package rom; import java.awt.BorderLayout; import java.awt.Color; import java.awt.event.ActionEvent; ...

  3. 网页静态处理技术FreeMarker概述

    FreeMarker 是一个用 Java 语言编写的模板引擎,它基于模板来生成文本输出.FreeMarker与 Web 容器无关,即在 Web 运行时,它并不知道 Servlet 或 HTTP.它不仅 ...

  4. 41.纯 CSS 绘制一支栩栩如生的铅笔

    原文地址: https://segmentfault.com/a/1190000015153865 感想: 不难 HTML code: <div class="pencil" ...

  5. JavaWeb学习篇--Filter过滤器

    Filter过滤器简介 ServletAPI中提供了一个Filter接口,开发web应用时,如果编写的 java 类实现了这个接口,则把这个java类称之为过滤器Filter. WEB服务器每次在调用 ...

  6. Windows系统不同磁盘间的扩容教程

    1.windows系统不同磁盘的空间扩展: https://www.cnblogs.com/yunweis/p/8023098.html

  7. c++Builder debug DataSet Visualizer

    c++Builder debug DataSet Visualizer delphi 正常,c++builder报错. fdMemTable->SaveToFile("d:\\DSdb ...

  8. Linux 远程登录配置

    如果使用FlashFxp的sftp无法登陆,提示SSH 错误: 协商认证模式失败,也同样这样操作 修改你的ssh配置文件 配置文件路径如:/etc/ssh/sshd_config PasswordAu ...

  9. PHP5 的五种常用模式

    PHP5 的五种常用模式. 工厂模式 最初在设计模式 一书中,许多设计模式都鼓励使用松散耦合.要理解这个概念,让我们最好谈一下许多开发人员从事大型系统的艰苦历程.在更改一个代码片段时,就会发生问题,系 ...

  10. jquery 基础-记住

    jquery最为一个库,简便. 难点在于选择器,筛选器的使用. 属性一般都是,jquery对象.函数(),括号内部添属性. s= '<tr> <td class="fix& ...