JAVA 通過string值和int值 獲取列舉物件 JAVA ENUM get enumtype by string value or int value
阿新 • • 發佈:2019-01-22
程式碼如下
public <T extends Enum<T>> T stringToEnum(Class<T> enumType, String value) { T t = null; try { for (T ele:enumType.getEnumConstants()) { if (enumType.getMethod("getValue").invoke(ele).equals(value)){ t = ele; break; } } } catch (Exception e) { e.printStackTrace(); } return t; } public <T extends Enum<T>> T intToEnum(Class<T> enumType, int value) { T t = null; try { for (T ele:enumType.getEnumConstants()) { if (enumType.getMethod("getValue").invoke(ele).equals(value)){ t = ele; break; } } } catch (Exception e) { e.printStackTrace(); } return t; }