java - 在Java中的Collections对象中声明类型参数两次

标签 java arrays list collections types

我一直在学习 Java(使用 Java 6),并且我注意到,当创建 Collections 对象(例如 ArrayList)时,必须声明类型引用类型和对象类型中的参数。仅在引用类型中声明类型参数不是更容易吗?或者在某些情况下类型参数可以不同?

例如,下面的类型参数 (String) 必须声明两次。

List<String> aList = new ArrayList<String>();

最佳答案

Java 7 还引入了 "diamond" form ,它可以推断类型并让您编写更简洁的代码。

If the type argument list to the class is empty — the diamond form "<>" — the type arguments of the class are inferred. It is legal, though strongly discouraged as a matter of style, to have white space between the "<" and ">" of a diamond.

所以,你可以这样写:

List<String> aList = new ArrayList<>();

有几个例子here.

关于java - 在Java中的Collections对象中声明类型参数两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28975812/

相关文章:

jsp页面中的Java变量和Javascript变量

java - 如何检测一个对象只能弱可达?

javascript - 从多维无穷大数组中删除数组元素

java - 如何根据第一个元素合并多个数组列表?

java - 从数组中查找缺失的数字

java - onTouchEvent 不能@Override

java.net.URI.relativize 不适用于 JAR URI

r - 如何将两行移动到 R 列表中数据框的顶部?

list - 将数字列表拆分为对列表列表

c - C中双向链表实现的pop方法,需要使用free吗