Java Gold合格への道 ~StreamAPI・anyMatch、allMatch、noneMatch~
スポンサーリンク
こんにちは。たろすです。
今回はStreamAPIのanyMatch、allMatch、noneMatchについて説明します。
三つともPredicateオブジェクトを引数に取り、boolean型の戻り値を返すメソッドです。
それぞれどのような使い方をするのか見ていきましょう。
anyMatch
ストリームの要素のうち一つでも引数のPredicateオブジェクトの評価に当てはまる場合にtrueを返します。
以下のように使います。
int[] array = { 1, 2, 3 }; IntStream stream1 = Arrays.stream(array); System.out.println(stream1.anyMatch(n -> n == 2)); IntStream stream2 = Arrays.stream(array); System.out.println(stream2.anyMatch(n -> n == 0));
true false
allMatch
ストリームの要素すべてが引数のPredicateオブジェクトの評価に当てはまる場合にtrueを返します。
以下のように使います。
int[] array = { 1, 2, 3 }; IntStream stream1 = Arrays.stream(array); System.out.println(stream1.allMatch(n -> n == 2)); IntStream stream2 = Arrays.stream(array); System.out.println(stream2.allMatch(n -> n > 0));
false true
noneMatch
ストリームの要素すべてが引数のPredicateオブジェクトの評価に当てはまらない場合にtrueを返します。
以下のように使います。
IntStream stream1 = Arrays.stream(array); System.out.println(stream1.noneMatch(n -> n == 2)); IntStream stream2 = Arrays.stream(array); System.out.println(stream2.noneMatch(n -> n < 0));
false true