Java 8 では、Stream API はストリーム内の要素の数を制御するための limit() メソッドと Skip() メソッドを提供します。
limit(n): ストリームを最初の n 要素に制限します。
skip(n): 最初の n 要素をスキップし、残りを処理します。
両方を示す例を次に示します:
import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; public class StreamLimitSkipExample { public static void main(String[] args) { List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10); // Using limit() to get the first 5 elements List<Integer> limitedList = numbers.stream() .limit(5) .collect(Collectors.toList()); System.out.println("First 5 elements: " + limitedList); // Using skip() to skip the first 5 elements and get the rest List<Integer> skippedList = numbers.stream() .skip(5) .collect(Collectors.toList()); System.out.println("After skipping first 5 elements: " + skippedList); // Combining skip() and limit() to get elements from 4th to 7th positions List<Integer> limitedAndSkippedList = numbers.stream() .skip(3) // skip first 3 elements (index starts at 0) .limit(4) // then take the next 4 elements .collect(Collectors.toList()); System.out.println("Elements from 4th to 7th positions: " + limitedAndSkippedList); } }
説明:
limit(5) の使用: これにより、ストリームが最初の 5 要素に制限され、結果は [1, 2, 3, 4, 5] になります。
skip(5) の使用: 最初の 5 つの要素をスキップして残りを収集し、結果は [6, 7, 8, 9, 10] になります。
skip(3) とlimit(4) の組み合わせ: まず、最初の 3 つの要素をスキップし、次に次の 4 つの要素に制限します。その結果、位置 4 から 7 の要素が [4, 5, 6, 7] になります。
出力:
First 5 elements: [1, 2, 3, 4, 5] After skipping first 5 elements: [6, 7, 8, 9, 10] Elements from 4th to 7th positions: [4, 5, 6, 7]
このアプローチは、ページネーションを処理したり、コレクション内の特定の範囲を抽出したりする場合に役立ちます。
以上がJava ストリーム API の limit() メソッドと Skip() メソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。