3
當我沒有泛型枚舉的運行時類型時,如何創建一個空的EnumSet?示例代碼:創建一個通用類型的枚舉集合
public class Utility<T extends Enum<T>> {
private T[] enumConstants;
public Utility(Class<T> e) {
enumConstants = e.getEnumConstants();
}
private EnumSet<T> emptyEnumSet() {
// ?
}
}
這是我目前的解決方法,我認爲它來得有點笨拙:
private EnumSet<T> emptyEnumSet() {
T first = enumConstants[0];
EnumSet<T> result = EnumSet.of(first);
result.remove(first);
return result;
}
哦,我想我對我的泛型類型參數感到困惑。它確實有效。 – steffen