我已将一些项目导入我的工作区。它有一些hashmaps,arraylist等。它在<>
部分代码中有语法错误。
例如,数组列表的定义是ArrayList<String> bases = null;
但是当创建像bases = Arraylist<>();
这样的新实例时,它会出现语法错误。
我的系统上安装了jre1.7和JDK 7
答案 0 :(得分:2)
bases = new ArrayList<>();
答案 1 :(得分:0)
看起来像是泛型类型的声明,但它缺少这封信。尝试用字母填充括号,并在类标题中将该字母声明为泛型类型。
答案 2 :(得分:0)
这个(<>
)被称为菱形运算符(类型推断),它在1.7中被添加到Java中。在您的系统上安装Java 7是不够的,您的项目也应该使用Java,因此请使用您的ide项目设置中的Java 7。
答案 3 :(得分:0)
diamond仅由jdk7(及更高版本)支持。您已在系统上安装了jdk7。您应该确保您的IDE(eclipse?)使用jdk / jre7作为您的项目。
也可能是你问题上的拼写错误。您需要new
关键字和ArrayList
(大L)。
xxx = new ArrayList<>();
答案 4 :(得分:0)
如果您打算使用原始类型,请声明并分配如下:
ArrayList bases = null;
bases = new ArrayList();
如果您使用泛型和JDK7,则声明要存储的对象的TYPE,并使用菱形运算符:
ArrayList<TYPE> bases = null;
bases = new ArrayList<>();