java怎么拦截某个对象
281
2023-01-29
java枚举enum,根据value值获取key键的操作
1.ZjlxEnum.java
public enum ZjlxEnum implements IEnum {
SFZ("1", "居民身份证"),
XGZM("2", "香港特区护照/身份证明"),
AMZM("3", "澳门特区护照/身份证明"),
TWTXZ("4", "台湾居民来往大陆通行证"),
JWJZZ("5", "境外永久居住证"),
HZ("6", "护照"),
QT("7", "其他");
private String value;
private String label;
public String getValue() {
return this.value;
}
public String getLabel() {
return this.label;
}
}
2.调用方式:
private String getZjlx(String zjlxCn) {
Optional
return m1.isPresent() ? m1.get().getValue() : null;
}
3.EnumUtil.java
public class EnumUtil {
private static Map
/**
* 根据条件获取枚举对象
*
* @param className 枚举类
* @param predicate 筛选条件
* @param
* @return
*/
public static
if (!className.isEnum()) {
return null;
}
Object obj = map.get(className);
T[] ts = null;
if (obj == null) {
ts = className.getEnumConstants();
map.put(className, ts);
} else {
ts = (T[]) obj;
}
return Arrays.stream(ts).filter(predicate).findAny();
}
}
补充:Java遍历枚举(Enum)的Value和相对应的Index
遍历枚举:
public class ColonYHXygkrIndexTest {
@SuppressWarnings("resource")
public static void main(String[] args) {
// TODO Auto-generated method stub
HSSFColorPredefined[] allColor = HSSFColorPredefined.values();
for(int i = 0;i < allColor.length;i++) {
System.out.println(allColor[i].name() + " == " + allColor[i].ordinal());
}
}
}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~