talosのプログラミング教室

Java Gold合格への道 ~StreamAPI・findAny、findFirst~

スポンサーリンク

こんにちは。たろすです。

今回はStreamAPIのfindAny、findFirstについて説明します。

二つとも引数を取らず、Optional型の戻り値を返すメソッドです。

それぞれどのような使い方をするのか見ていきましょう。

findAny

ストリームの要素のうち一つを含むOptionalを返します。

ただし、返される要素は常に同じとは限りません。

ストリームが空の場合は空のOptionalが返されます。

以下のように使います。

int[] array = { 1, 2, 3 };
IntStream stream = Arrays.stream(array);
System.out.println(stream.findAny());
OptionalInt[1]  // 必ず[]の中が1とは限らない

findFirst

ストリームの最初の要素を含むOptionalを返します。

ストリームが空の場合は空のOptionalを返します。

以下のように使います。

int[] array = { 1, 2, 3 };
IntStream stream = Arrays.stream(array);
System.out.println(stream.findFirst());
OptionalInt[1]

おわりに

今回はStreamAPIのfindAny、findFirstについて説明しました。