不能让溪流在日食上工作

时间:2016-10-04 12:47:42

标签: eclipse java-8 java-stream

我最近在我的Eclipse(MAC)上安装了JDK 8,我试图使用这些流。

但是,似乎Java 8配置不正确,因为我在以下代码行中收到以下错误:

List<Eshop> tempShops = eshops.stream().filter( e -> e.getName().equals(name)).collect(Collectors.toList());

Multiple markers at this line
    - e cannot be resolved to a variable
    - e cannot be resolved
    - Syntax error on token "-", -- 
     expected

任何人都知道可能出现什么问题?

EDIT 也试过像

List<Eshop> tempShops = eshops.stream().filter( (e) -> e.getName().equals(name)).collect(Collectors.toList());

2 个答案:

答案 0 :(得分:3)

Eclipse Kepler不包含Java 8支持(除非您安装了补丁)。

您应该使用当前的Eclipse Neon(4.6.1)来获得完整的Java 8支持。

答案 1 :(得分:0)

我有同样的问题。我分别创建了一个谓词,然后自动导入了java.util.function.Predicate包,并解决了错误。

您可以尝试这样的事情:

谓词商店= e-> {返回e.getName()。equals(name);};

列出tempShops = eshops.stream()。filter(shop).collect(Collectors.toList());