1
次のコードを検討してください。 Stream APIを扱う際にコード内で不変性を達成することが重要であることを読んでいます。不変性のある小文字の項目すべてのリストを取得するにはどうすればよいですか?Java 8ストリームAPIで不変性を実現する方法
List<String> stockList = Arrays.asList("GOOG", "AAPL", "MSFT", "INTC");
List<String> stockList2 = new ArrayList<>();
stockList.parallelStream()
.filter(e -> !e.contains("M"))
.map(String::toLowerCase)
.map(e -> stockList2.add(e))
.collect(toList());
stockList2.forEach(System.out::println);
文字列はまだ不変なので、在庫リスト2は在庫リストの文字列から作成された新しい文字列を保持しますリスト – urag
あなたが尋ねたものではありませんが、一般的には注意してParallelStreamを使用するべきです(単純なケースではオーバーヘッドは利点) –
この文脈では、不変性の意味がはっきりしません。どうか明らかにしてください。 – shmosel