2022-03-01から1ヶ月間の記事一覧
こんにちは。たろすです。今回はStreamAPIのreduceについて説明します。 使い方 おわりに おすすめの学習本 使い方 reduceは開発者がリダクション処理をカスタマイズするためのメソッドです。以下のように使用します。 int[] array = { 1, 2, 3 }; IntStream…
こんにちは。たろすです。今回はStreamAPIのリダクションについて説明します。 リダクションとは count average max min sum おわりに おすすめの学習本 リダクションとは データの集合を要約するような終端操作をリダクションと呼びます。 count ストリーム…
こんにちは。たろすです。今回はStreamAPIのmergeについて説明します。 使い方 おわりに おすすめの学習本 使い方 mergeはクセのあるメソッドで、引数のkeyがmapに存在するときとしないときで違う動きをします。メソッドの定義は以下の通りです。 default V …
こんにちは。たろすです。今回はStreamAPIのdistinctについて説明します。 使い方 おわりに おすすめの学習本 使い方 distinctはストリーム内の重複した要素を排除するメソッドです。以下のように使います。 int[] array = { 1, 1, 2, 3, 4, 4, 4, 5, 5, 6 }…
こんにちは。たろすです。今回はStreamAPIのflatMapについて説明します。 使い方 おわりに おすすめの学習本 使い方 flatMapは入れ子構造のストリームを平坦なストリームに変換するメソッドです。以下のように使います。 List<List<Integer>> list = Arrays.asList(Arrays.</list<integer>…
こんにちは。たろすです。今回はStreamAPIのfindAny、findFirstについて説明します。二つとも引数を取らず、Optional型の戻り値を返すメソッドです。それぞれどのような使い方をするのか見ていきましょう。 findAny findFirst おわりに おすすめの学習本 fin…
こんにちは。たろすです。今回はStreamAPIのanyMatch、allMatch、noneMatchについて説明します。三つともPredicateオブジェクトを引数に取り、boolean型の戻り値を返すメソッドです。それぞれどのような使い方をするのか見ていきましょう。 anyMatch allMatc…
こんにちは。たろすです。今回はStreamパイプラインの処理の流れについて説明します。 処理の流れを可視化 おわりに おすすめの学習本 処理の流れを可視化 次のプログラムはどのような出力をすると思いますか? int[] array = { 1, 2, 3, 4, 5 }; IntStream …
こんにちは。たろすです。今回はStreamAPIのpeekの使い方について説明します。 使い方 おわりに おすすめの学習本 使い方 peekはStreamオブジェクトをそのまま返すメソッドです。引数に副作用を伴う処理を書くことで、デバッグに使用することができます。以…