[英]Java: Nested generics?
Java嵌套泛型吗? 以下是Eclipse中的一个错误:
ArrayList<ArrayList<Integer>> numSetSet = ArrayList<ArrayList<Integer>>();
错误是:
Syntax error on token "(", Expression expected after this token
你忘记了new
词。
那应该是:
ArrayList<ArrayList<Integer>> numSetSet = new ArrayList<ArrayList<Integer>>();
甚至更好:
List<List<Integer>> numListList = new ArrayList<List<Integer>>();
您忘记了'new'关键字,如下面的代码所示:
ArrayList <ArrayList <Integer >> numSetSet = new ArrayList <ArrayList <Integer >>();
您还可以使用映射以及嵌套泛型的列表,如Java 5(J2SE 5.0 / JDK 1.5)中所示。
对于那些通过谷歌提出这个问题的人来说,Yes Generics可以嵌套。 其他答案就是这样做的好例子。
这里有一些关于Java模板编程的技巧略显棘手,我怀疑有多少人曾在Java中使用它。
这是一种避免施法的方法。
public static <T> T doSomething(String... args)
这是一种使用通配符限制参数类型的方法。
public void draw(List<? extends Shape> shape) {
// rest of the code is the same
}
您可以在SUN的网站上获得更多样本:
http://java.sun.com/developer/technicalArticles/J2SE/generics/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.