2016-10-04 10 views
0

最近、Eclipse(MAC)にJDK 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 

誰もが間違っている可能性がありますどのような考えを持っている:

しかし、私が次のコード行に次のエラーを取得するため、Javaの8が正しく設定されていないようですか?

EDIT はまた、(あなたがパッチをインストールしていない限り)は、Java 8のサポートが含まれていませんでし

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

あなたは 'args - > expression'を使っているようです。それは '(args) - >式'でなければなりません。 –

+0

こんにちは、もっと具体的になりますか? (args)はどういう意味ですか?あなたは例を挙げることができますか? – panipsilos

+0

と同様に、ラムダ引数の周りにかっこが必要です。 [Javaラムダ入門](/ documentation/java/91/lambda-expressions/2353/introduction-to-java-lambdas)を参照してください。 –

答えて

3

Eclipseのケプラーのように試してみました。

完全なJava 8サポートのために、現在のEclipse Neon(4.6.1)を使用する必要があります。

+0

thnx Greg、私はNeonに移動します。 – panipsilos

+0

これは、EclipseがJDKコンパイラを使用せず、独自の組み込みコンパイラを使用するためです。 –

関連する問題