8

在 java 程序中,我有以下代码行:

HashMap<String, String> query_args = new HashMap<>();

我收到以下错误:

'<>' 运算符不允许用于低于 1.7 的源级别

我试图将项目合规性和 jre 更改为 1.7,但随后 eclipse 无法解决导入问题。我正在使用 jre 1.6。

有什么建议么?

4

2 回答 2

14

在 Java 7(此处为 1.7)之前,您需要执行

HashMap<String, String> query_args = new HashMap<String, String>();

它被称为菱形运算符,并且与早期版本的 Java 不向后兼容。

于 2013-04-05T23:51:26.287 回答
10

因为这直到 Java 7 才引入。除了记录 Java 的历史之外,我真的不知道如何回答这个问题。

关于导入,您应该研究为什么 Eclipse 在设置为 Java 1.7 时无法解析它们的任何导入,并且如果需要将其作为单独的问题发布。

于 2013-04-05T23:50:37.610 回答