インターフェース CloseableIterator<T>

型パラメーター:
T -
すべてのスーパーインターフェース:
AutoCloseableSECloseableSEIteratorSE<T>

public interface CloseableIterator<T> extends IteratorSE<T>, CloseableSE
CloseableIterator は、Java 8 java.util.stream.Stream でラップできる基になるデータストア固有の結果のブリッジデータ構造として機能します。これにより、実装は、要素を反復処理するために開いたままにしておく必要のあるリソースをクリーンアップできます。
導入:
1.10
作成者:
Thomas Darimont, Mark Paluch
  • メソッドの詳細

    • close

      void close()
      次で指定:
      インターフェース AutoCloseableSEclose 
      次で指定:
      インターフェース CloseableSEclose 
    • spliterator

      default SpliteratorSE<T> spliterator()
      この IteratorSE によって提供される要素の上に SpliteratorSE を作成します。実装では、スプリッターによって報告された特性値をドキュメント化する必要があります。スプリッターが Spliterator.SIZEDSE を報告し、このコレクションに要素が含まれていない場合、このような特性値を報告する必要はありません。

      デフォルトの実装は、より効率的なスプリッターを返すことができるサブクラスによってオーバーライドされる必要があります。stream() メソッドで予想される遅延動作を維持するには、スプリッターが IMMUTABLE または CONCURRENT の特性を備えているか、遅延バインディングである必要があります。

      デフォルトの実装ではサイズは報告されません。

      戻り値:
      この IteratorSE の要素に対する SpliteratorSE
      導入:
      2.4
    • stream

      default StreamSE<T> stream()
      この IteratorSE をソースとしてシーケンシャル Stream を返します。結果のストリームは、closed のときに close() を呼び出します。結果の StreamSE は、使用後に閉じる必要があります。try -with-resources ステートメントでリソースとして宣言できます。

      spliterator() メソッドが IMMUTABLECONCURRENT遅延バインディングであるスプリッターを返すことができない場合は、このメソッドをオーバーライドする必要があります。(詳細については、spliterator() を参照してください。)

      戻り値:
      この IteratorSE の要素に対する順次 Stream
      導入:
      2.4