Java 中典型的 ArrayList
声明具有以下类型:
ArrayList<Object> name = new ArrayList<Object>();
类似地,对于一个数组,我们有:
Object[] name = new Object[size];
现在,我们肯定不能有以下类型的声明:
ArrayList<Object> name = new ArrayList<AnotherObject>();
两次指定同一对象的类型和名称对我来说一直是多余的。上面声明中的冗余可以很容易地用这样的东西消除:
ArrayList<Object> name = new();
是否有任何具体原因让我遗漏了为什么它是这样完成的?
最佳答案
事实并非如此。至少,不再是了。现在您可以:
ArrayList<Object> name = new ArrayList<>();
您不能省略第二个 ArrayList
,因为它不一定必须与第一个匹配。例如,您可以这样做:
List<Object> name = new ArrayList<>();
您将得到一个 ArrayList
,但将其视为一个 List
。
关于java - Java 数组和 ArrayList 声明中的冗余措辞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34376161/