我想了解Java 8和Java 7之间的差异。目前我正在研究Java 8 forEach
循环。
public class Main {
public static void main(String[] args){
List<String> strings = Arrays.asList("hello","my","name","is","test");
strings.stream().forEach(s -> System.out.println(s));
}
}
此代码为我生成以下错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
s cannot be resolved to a variable
Syntax error on token "-", -- expected
s cannot be resolved to a variable
at Main.main(Main.java:7)
我确信JDK以及JRE都是Java 8,因为计算程序可以从forEach
而不是List
参数识别->
方法。
答案 0 :(得分:2)
我通过重新安装JRE,JDK并创建了一个全新的eclipse安装来解决这个问题。 显然,旧的日食仍然与Java 7 JDK中的一些剩余物有关。
答案 1 :(得分:0)
在命令提示符下测试java版本 C:GT; java -version
如果它给出1.7,则JDK不会更新为1.8。
在eclipse中你可以使用windows-&gt; preferences-&gt; java-&gt;编译器并选择编译器合规级别为1.8