java: -source 1.5 中不支持 diamond 运算符
时间: 2023-09-01 22:11:27 浏览: 268
Java 7 引入了 Diamond 操作符,可以在实例化泛型类时省略泛型参数类型,例如:
```java
List<String> list = new ArrayList<>();
```
这个 Diamond 操作符可以有效地简化代码,但在使用 -source 1.5 编译源代码时,会提示以下错误:
```
diamond operator is not supported in -source 1.5
```
这是因为在 Java 5 中还没有引入 Diamond 操作符,所以在编译时会出现错误。
解决方法是将 -source 参数改为 1.7 或更高版本:
```
javac -source 1.7 MyClass.java
```
或者在 IDE 中将编译器版本设置为 1.7 或更高版本。
相关问题
java: -source 1.5 中不支持 diamond 运算符,怎么解决
Diamond运算符是Java 7中引入的新特性,如果你在使用Java 5编译器时尝试使用它,就会出现错误。为了解决这个问题,你需要手动指定泛型类型,而不使用Diamond运算符。例如,如果你在Java 5中需要创建一个ArrayList,可以这样写:
```java
ArrayList<String> list = new ArrayList<String>();
```
这里我们手动指定了泛型类型为String,而没有使用Diamond运算符。这样就可以在Java 5中编译和运行代码了。
java: -source 1.5 中不支持 diamond 运算符 (请使用 -source 7 或更高版本以启用 diamond 运算符)
这段话是在讲解 Java 编译器的命令行选项,其中 -source 1.5 表示指定源代码兼容的 Java 版本为 1.5。而后面的“diamond 运算符”指的是 Java 7 引入的“菱形操作符”,用于简化泛型类型的定义。
由于在 Java 1.5 版本中并没有引入这个运算符,所以编译器会提示这个错误信息,建议你使用更高版本的 Java(7 或更高)以启用这个运算符。
阅读全文