我一直被教导在你的代码中实例化一个泛型类时这样做:
ArrayList<String> a = new ArrayList<String>();
但是当我在 Eclipse 中工作时,它总是自动完成它:
ArrayList<String> a = new ArrayList <>();
这两种说法有区别吗?
我一直被教导在你的代码中实例化一个泛型类时这样做:
ArrayList<String> a = new ArrayList<String>();
但是当我在 Eclipse 中工作时,它总是自动完成它:
ArrayList<String> a = new ArrayList <>();
这两种说法有区别吗?
后者只是 Java 7 中的快捷语法(称为类型推断)。
有关更多详细信息,请参阅通用实例创建的类型推断。
ArrayList<String> a = new ArrayList <>();
在这种情况下,应用了类型推断。因此,您不需要在构造函数调用时显式声明参数化类型。