1
私はラムダ式を使用している単純なJavaアプリケーションをデバッグしようとしています。私は通常のEclipseデバッガを使ってLambda Expressionをデバッグすることができません。Eclipseを使用してJava 8でラムダ式をデバッグする方法は?
私はラムダ式を使用している単純なJavaアプリケーションをデバッグしようとしています。私は通常のEclipseデバッガを使ってLambda Expressionをデバッグすることができません。Eclipseを使用してJava 8でラムダ式をデバッグする方法は?
式をステートメントに変換できます。
List<String> list = new ArrayList<>();
// expression
boolean allMatch1 = list.stream().allMatch(s -> s.contains("Hello"));
// statement
boolean allMatch2 = list.stream().allMatch(s -> {
return s.contains("Hello");
});
あなたは今
を参照してください。式をステートメントに変換する必要はありません。 ' - >'の後に改行を挿入するだけで十分です。 – Holger
改行とステップバイステップのデバッグが行番号に基づいています
return s.contains("Hello");
ライン上のブレークポイントを設定することができます。そのため、ラムダ式に改行を挿入して、ラムダ式を周囲のコンテキストと区別できるようにする必要があります。それだけでなく、Eclipseバージョンでラムダ式について知らない場合でも問題なく動作します(行番号をソースコードのテキストと一致させることがすべてです)。 – HolgerIMHO、デバッグが必要な場合は、ラムダではなくプライベートメソッドであるべきです。 –
ストリーム内で 'peek(System.out :: println)'も考慮してください。 –