实例化泛型类(Java)

时间:2013-03-02 16:31:48

标签: generics java-7 instantiation type-inference diamond-operator

我总是被告知,在代码中实例化泛型类时,就像这样:

ArrayList<String> a = new ArrayList<String>();

但是当我在Eclipse工作时,它总是自动完成它:

ArrayList<String> a = new ArrayList <>();

这两个陈述之间有区别吗?

2 个答案:

答案 0 :(得分:2)

后者只是Java 7中的快捷语法(称为类型推断)。

有关详细信息,请参阅Type Inference for Generic Instance Creation

答案 1 :(得分:0)

ArrayList<String> a = new ArrayList <>();

在这种情况下,应用了类型推断。因此,在构造函数调用时,您不需要显式声明参数化类型