我在使用泛型方面仍然很弱,并且我有一个问题:基于以下方法,我想初始化一个列表:
public <T extends Enum<T> & AnyInterface> boolean getIsDescSort(Class<T> tableSortEnum) {
return tableSortEnum.getName().endsWith(DESC_SUFFIX);
}
(通常)是否可以使用这些对象完全初始化List?或换句话说:我可以在列表中输入这些信息吗?枚举实现了某个接口?
List<T extends Enum<T> & AnyInterface> myList;
在Eclipse IDE中向我显示了几个错误,因此我认为它不会编译。我阅读了一些有关此的文章,但在初始化集合时是否允许/可能却不知道...
您正在尝试在错误的位置键入。例如,以下将正常工作
public class Foo<T extends Enum<T> & AnyInterface> {
private List<T> foo;
}
像这样
public static <T extends Enum<T> & AnyInterface> List<T> foo(Class<T> clazz) {
ArrayList<T> foo = new ArrayList<>();
return foo;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句