Метод skip
Метод skip класса Stream пропускает
заданное количество элементов с начала потока
и возвращает новый поток, состоящий из оставшихся
элементов. В первый параметр мы передаем
количество элементов, которое нужно пропустить.
Если переданное число больше размера потока,
возвращается пустой поток. Метод является
промежуточной операцией и не изменяет исходный поток.
Синтаксис
stream.skip(n)
Пример
Давайте пропустим первые 2 элемента потока
и выведем оставшиеся:
import java.util.List;
import java.util.stream.Stream;
public class Main
{
public static void main(String[] args)
{
Stream<Integer> stream = Stream.of(1, 2, 3, 4, 5);
stream.skip(2).forEach(System.out::println);
}
}
Результат выполнения кода:
3
4
5
Пример
Давайте пропустим первые 3 элемента и
соберем оставшиеся элементы в список:
import java.util.List;
import java.util.stream.Collectors;
public class Main
{
public static void main(String[] args)
{
List<String> res = List.of("a", "b", "c", "d", "e")
.stream()
.skip(3)
.collect(Collectors.toList());
System.out.println(res);
}
}
Результат выполнения кода:
[d, e]
Пример
Если количество пропускаемых элементов больше размера потока, результатом будет пустой поток:
import java.util.List;
import java.util.stream.Collectors;
public class Main
{
public static void main(String[] args)
{
List<Integer> res = List.of(1, 2, 3, 4, 5)
.stream()
.skip(10)
.collect(Collectors.toList());
System.out.println(res);
}
}
Результат выполнения кода:
[]