业务中涉及到的状态字段或者简单的选择项的使用。

例如:

1.定义enum枚举类。

package com.yjl.enums;

import java.util.Objects;

public enum GoodsUnitEnum {

    重量("重量",),
件数("件数",),
体积("体积",);
String type;
Integer index; GoodsUnitEnum(String type, Integer index) {
this.type = type;
this.index = index;
} public String getType() {
return type;
} public Integer getIndex() {
return index;
} /**
* 通过index获取value
* @param index 枚举索引
* @return 枚举值
*/
public static String getValue(Integer index) {
for (GoodsUnitEnum c : GoodsUnitEnum.values()) {
if (Objects.equals(c.getIndex(), index)) {
return c.type;
}
}
return null;
}
/**
* 通过value获取index
* @param type 枚举值
* @return 枚举索引
*/
public static String getIndex(String type) {
for (GoodsUnitEnum c : GoodsUnitEnum.values()) {
if (Objects.equals(c.getType(), type)) {
return c.index+"";
}
}
return "error";
} }

2,(扩展)获取该枚举类中所有选择项:

package com.yjl.util;

import com.yjl.enums.GoodsUnitEnum;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; public class EnumUtil { public static List<Map<String, String>> getGoodsUnitEnum() {
List<Map<String, String>> lm = new ArrayList<>();
Map<String, String> m;
for (int i = ; i < GoodsUnitEnum.values().length; i++) {
m = new HashMap<>();
m.put("id", GoodsUnitEnum.values()[i].getIndex() + "");
m.put("type", GoodsUnitEnum.values()[i].getType() + "");
lm.add(m);
}
return lm;
} }

3,(使用)简单使用一下;

可以通过名称获取类型;可以通过类型获取名称;也可以索引。

最新文章

  1. {Reship}{Matting}Image Matting
  2. Map-Reduce的工作机制
  3. MySQL中MySQL X.X Command Line Client一闪而过的问题
  4. MySQL查询原理及其慢查询优化案例分享(转)
  5. RGB Bayer Color分析
  6. 类库探源——System.ValueType
  7. Android 平滑图片加载和缓存库 Glide 使用详解
  8. Qt5:Qt文件操作类 QFile
  9. DataGridView很详细的用法
  10. Linux下的crontab
  11. Pi 3B+编译安装python3.6.8
  12. 基于JMH的Benchmark解决方案
  13. 【PyTorch深度学习60分钟快速入门 】Part5:数据并行化
  14. python爬虫---urllib库的基本用法
  15. 爬虫初窥day4:requests
  16. spring aop记录用户的操作
  17. .Net各版本新特性
  18. unity3d-地图制作之暗光
  19. Log4Net使用教程
  20. Oracle中的rownum不能使用大于&gt;的问题

热门文章

  1. MongoDB的介绍安装与基本使用
  2. 2019牛客暑期多校训练营(第二场) - J - Go on Strike! - 前缀和预处理
  3. 2018宁夏邀请赛 Continuous Intervals(单调栈 线段树
  4. 牛客2018国庆集训派对Day3 I Metropolis 多源最短路径
  5. [USACO07OCT]障碍路线 &amp; yzoj P1130 拐弯 题解
  6. Pipenv的简单使用
  7. python 整型、字符串常用方法、for循环
  8. 04 python之函数详解
  9. Spring Boot跨域解决方案
  10. Fire Balls 11——平台组合,场景的美化