println无法解析为变量

时间:2016-06-26 08:22:26

标签: java eclipse java-8 java-stream

我正在大学学习面向对象编程,我的教授们正在研究java的流程。不幸的是,当我尝试运行此代码时,它会在System.out::println上将“println无法解析为变量”。 它还说要删除两个冒号, 在我教授的日食中,它确实有效。

这是代码。我在eclipse上为ubuntu运行它,我的java版本是1.8更新91

package stream;

import java.util.Arrays;

public class StreamExamples {

    public static void main(String[] args){
        String text = "I have no idea what is the problem";
        String[] words = text.split(" ");

        Arrays.stream(words)        
        .sorted()
        .limit(3)
        .forEach(System.out::println);
    }
}

2 个答案:

答案 0 :(得分:1)

您运行的Eclipse版本很可能不了解Java 8语法。

您需要运行当前的Eclipse 4.6(Neon)或之前的版本4.5(Mars)才能获得完整的Java 8支持。您的代码在Eclipse Neon上运行良好。

答案 1 :(得分:0)

1)右键单击项目 Build Path>检查构建路径。配置构建路径。库选项卡应显示版本为1.8的JRE,如果不是这样,请单击编辑并选择至少版本为8的JRE。

2)右键单击项目,检查编译器设置,属性> Java编译器。将编译器合规性级别更改为1.8。