前回は四つの中間操作について紹介を行いました。今回は終端操作をメインに今まで紹介してこなかったメソッドについて紹介します。今回紹介するメソッドを以下に示します。

  • 終端操作
    • count
    • allMatch/anyMatch/noneMatch
  • 中間操作
    • peek
  • その他の操作
    • concat
  • プリミティブ型に対応するストリームのメソッド
    • boxed
    • ストリームの変換メソッド

 countメソッドはストリームの要素数をカウントするためのメソッドになります。Matchで終わる三つのメソッドはいずれも条件に合致した要素があるかどうかを調べるためのメソッドになります。

 allMatchメソッドは全ての要素が条件に合致しているかどうか、anyMatchメソッドは一つでも条件に合致しているかどうかを調べます。最後のnoneMatchメソッドは条件に合致している要素がないことを調べます。

 中間操作のpeekメソッドはデバッグなどの用途に使われる特殊な中間操作となります。そして、その他の操作であるconcatメソッドは、ストリームを連結するためのメソッドです。

 最後の二つのメソッドは、IntStreamインタフェースなどプリミティブ型に対応したストリームのみで定義されているメソッドです。

 双方ともに、他のストリームへの変換メソッドになります。boxedメソッドはStreamオブジェクトへの変換、後者は他のプリミティブ型に対応したストリームへの変換となります。

 では、終端操作のメソッドから解説していきましょう。