3
ラムダ式は、実行されるたびにヒープ上にオブジェクトを作成しますか?
次のようなJava 8の新しい構文シュガーを使用してコレクションを反復処理すると、 myStream.forEach(item -> { // do something useful }); これは、以下の「古い構文」スニペットと同等ではありませんか? myStream.forEach(new Consumer<Item>() { @Override public void accept(Item item) { // do something useful } }); これはConsumer、コレクションを反復処理するたびに、新しい匿名オブジェクトがヒープ上に作成されることを意味しますか?これにはどのくらいのヒープ領域が必要ですか?パフォーマンスにどのような影響がありますか?大規模なマルチレベルのデータ構造を反復処理するときに、ループに古いスタイルを使用する必要があるということですか?