こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、11年目エンジニアです。
この記事では、 JavaのStream APIのlimitメソッドについて
- Stream APIのlimitメソッドとは
- Stream APIのlimitメソッドを使ったサンプルプログラム
と、丁寧に解説していきます。
Stream APIについては、こちらの記事をご参考ください。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows10 |
---|---|
IntelliJ IDEAのエディション | Community(無料版) |
IntelliJ IDEAのバージョン | 2021.3.2 |
プロジェクト | Javaプロジェクト |
SDK | Oracle OpenJDK version17.0.2 |
Javaを動かすためにIntelliJ IDEAを使っています。
IntelliJ IDEAのインストールは、下の記事をご参考ください。
Stream APIのlimitメソッドとは
Stream APIのlimitメソッドとは、ストリームの要素を引数に指定した値以下になるよう要素を切り詰めたストリームを返すメソッドです。
もし要素数よりlimitメソッドに与えた引数の方が大きかった場合、例外とならずストリームはそのまま返されます。
limitメソッドは、中間操作です。
使い方サンプルは以下になります。
1 2 3 |
【Stream】 .limit(【要素数】) .【終端操作】; |
では、次の章で実際に使ってみます。
Stream APIのlimitメソッドを解説するプログラムの概要
Stream APIのlimitメソッドを解説するプログラムでは、limitメソッドに対して
- 与えた値がストリームの長さ未満だった場合
- 与えた値がストリームの長さ以上だった場合
の2パターンで引数を与えて処理を行い、結果を表示して確認します。
解説で使うJavaプログラムは、Sampleプロジェクトのsampleパッケージ内にある、とします。
Javaサンプルプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
package sample; import java.util.ArrayList; import java.util.Arrays; import java.util.stream.IntStream; public class Sample { public static void main(String[] args) { System.out.println("■limitメソッドサンプル"); System.out.println("・与えた値がストリームの長さ未満だった場合"); IntStream.range(1, 11) .limit(5) .forEach(i -> System.out.println(i)); System.out.println("・与えた値がストリームの長さ以上だった場合"); ArrayList<String> fruitList = new ArrayList(Arrays.asList("apple", "kiwi fruit", "strawberry", "orange")); fruitList.stream() .limit(10) .forEach(fruit -> System.out.println(fruit)); } } |
IntStream.rangeメソッドはIntStreamを作成するメソッド、forEachメソッドは繰り返し処理を行うメソッドです。
詳しくはこちらの記事をご参考ください。
【Java】Stream APIのIntStream.rangeメソッドについて解説します
forEachメソッド
【Java】Stream APIのforEachメソッドについて解説します
実行結果
Javaプログラムを実行します。
実行のやり方は
- プログラムを右クリックして実行
- 実行タブから実行
- ガターから実行
の3種類あるので、いずれかで実行します。
詳しい解説は以下の記事をご参考ください。
1 2 3 4 5 6 7 8 9 10 11 12 |
■limitメソッドサンプル ・与えた値がストリームの長さ未満だった場合 1 2 3 4 5 ・与えた値がストリームの長さ以上だった場合 apple kiwi fruit strawberry orange |
limitメソッドの引数に与えた値以下にストリームを切り詰めていることが確認できました。
まとめ:Stream APIのlimitメソッドを使ってみよう!
以上がJavaのStream APIのlimitメソッドについての解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント