enum
来源:互联网 发布:支付宝与淘宝解绑不了 编辑:程序博客网 时间:2024/05/17 06:09
public class EnumUtil {
public static List<Integer> enumToOrdinal(Class<? extends Enum> clz){
if(!clz.isEnum()){
return null;
}
Enum[] enums=clz.getEnumConstants();
List<Integer> rels=new ArrayList<Integer>();
for(Enum en:enums){
rels.add(en.ordinal());
}
return rels;
}
/**
* 将枚举中的值转换为相应的名称字符串列表
* @param clz
* @return
*/
public static List<String> enumToName(Class<? extends Enum> clz){
if(!clz.isEnum()){
return null;
}
Enum[] enums=clz.getEnumConstants();
List<String> rels=new ArrayList<String>();
for(Enum en:enums){
rels.add(en.name());
}
return rels;
}
public static Map<Integer,String> enumToMap(Class<? extends Enum> clz){
if(!clz.isEnum()){
return null;
}
Enum[] enums=clz.getEnumConstants();
Map<Integer,String> rels=new HashMap<Integer,String>();
for(Enum en:enums){
rels.put(en.ordinal(),en.name());
}
return rels;
}
public static List<String> enumPropToList(Class<?extends Enum> clz ,String propName){
if(!clz.isEnum()){
return null;
}
List<String> rels;
try {
Enum[] enums=clz.getEnumConstants();
rels = new ArrayList<String>();
for(Enum en :enums){
rels.add((String)PropertyUtils.getProperty(en, propName));
}
return rels;
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
return null;
}
public static Map<Integer,String> enumPropToordinalMap(Class<?extends Enum> clz ,String propName){
if(!clz.isEnum()){
return null;
}
Map<Integer,String> rels=new HashMap<Integer,String>();
try {
Enum[] enums=clz.getEnumConstants();
for(Enum en :enums){
rels.put(en.ordinal(), (String)PropertyUtils.getProperty(en, propName));
}
return rels;
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
return null;
}
public static Map<String,String> enumPropToMap(Class<?extends Enum> clz ,String keyProp,String valueProp){
if(!clz.isEnum()){
return null;
}
Map<String,String> rels=new HashMap<String,String>();
try {
Enum[] enums=clz.getEnumConstants();
for(Enum en :enums){
rels.put((String)PropertyUtils.getProperty(en, keyProp), (String)PropertyUtils.getProperty(en, valueProp));
}
return rels;
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
return null;
}
public static Map<String,String> enumPropToNameMap(Class<?extends Enum> clz ,String propName){
if(!clz.isEnum()){
return null;
}
Map<String,String> rels=new HashMap<String,String>();
try {
Enum[] enums=clz.getEnumConstants();
for(Enum en :enums){
rels.put(en.name(), (String)PropertyUtils.getProperty(en, propName));
}
return rels;
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
}
return null;
}
}
0 0
- enum
- enum
- enum
- enum
- enum
- enum
- enum
- ENUM
- enum
- enum
- enum
- enum
- enum
- enum
- enum{}
- enum
- enum
- enum
- .net和tcp和udp的关联
- iOS:OC九宫格的计算方法
- jre和commonio和httpclient的关联
- html中table的使用(2)一般数据表
- SSM框架整合(以淘淘商城为例)
- enum
- 在PaaS上开发Web、移动应用(2)
- 图论1E,cf405E
- 2460: [BeiJing2011]元素 贪心+线性基
- 稍微码一下蒟蒻的链剖序+线段树 大概是模板吧……
- 致我们终将失去的CF
- android Activity的启动模式 作用简析+demo详解
- Scala学习笔记(1)
- adb和samba和struts2的关联