Java 8 Stream like list.stream().filter(....).collect(..).....
を使用している場合はいつこのストリームを閉じますか?閉じるJava 8 Stream
次の例のようにストリームを閉じるとよいでしょうか?
Stream<String> stream = list.stream();
String result = stream.limit(10).collect(Collectors.joining(""));
stream.close();
ストリームからBaseStream.close()メソッドがあり、AutoCloseableが実装されていますが、ほとんどのストリームインスタンスは実際には使用後に閉じる必要はありません。通常、ソースがIOチャネルであるストリーム(Files.lines(Path、Charset)によって返されるストリームなど)のみを閉じる必要があります。ほとんどのストリームは、特別なリソース管理を必要としないコレクション、配列、または生成関数によってサポートされています。 (ストリームが終了する必要がある場合は、try-with-resourcesステートメントでリソースとして宣言できます)。 – Matt
ストリームを閉じる必要はありません^) – injecteer
ストリームは一般的に必須ではありません閉まっている。 'DirectoryStream'のようなリソースにアクセスするいくつかのストリームだけが閉じられる必要があります。これを実行する最善の方法は、[try-with-resources](https://docs.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html)ステートメントを使用することです。 – Jesper