在实际开发中,除了使用常量存储固定不变的配置项外,我们还可以使用枚举类型的变量进行存储配置。通过枚举,我们可以自定义一些额外属性,比如:id、value等等,最后组装成List集合,转换成json格式(包含id、value),返回给前端。
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
/**
* 星期枚举
*/
enum Weekday {
MON(1,"星期一"),
TUE(2,"星期二"),
WED(3,"星期三"),
THU(4,"星期四"),
FRI(5,"星期五"),
SAT(6,"星期六"),
SUN(0,"星期日");
/**
* 星期序号
*/
public int dayNum;
/**
* 星期标题
*/
public String dayTitle;
/**
* 构造方法
* @param dayNum
* @param dayTitle
*/
Weekday(int dayNum,String dayTitle) {
this.dayNum = dayNum;
this.dayTitle = dayTitle;
}
/**
* 获取枚举的list
* @return
*/
static List> getList(){
List> list = new ArrayList<>();
//通过枚举类的values()方法,转换成一个枚举类型的数组
Weekday[] values = Weekday.values();
for (int i = 0; i < values.length; i++) {
//构造一个map
HashMap hashMap = new HashMap<>();
//将dayNum存储到id字段
hashMap.put("id",values[i].dayNum);
//将dayTitle存储到value字段
hashMap.put("value",values[i].dayTitle);
list.add(i,hashMap);
}
return list;
}
}
/**
* 测试
*/
class Demo{
public static void main(String[] args) {
//获取枚举转换后的list集合
List> list = Weekday.getList();
//打印
System.out.println(list);
}
} 执行结果:
[{id=1, value=星期一}, ...,...,{id=0, value=星期日}] | 留言与评论(共有 0 条评论) “” |