РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
330 of 1163 menu

Метод spliterator

Метод spliterator класса Iterable создает и возвращает объект типа Spliterator, который предназначен для обхода элементов коллекции. В отличие от обычного итератора, сплитератор поддерживает параллельную обработку данных, позволяя разделять поток элементов на части для независимой обработки в разных потоках. Метод не принимает параметров и возвращает новый экземпляр сплитератора при каждом вызове.

Синтаксис

iterable.spliterator()

Пример

Давайте получим сплитератор для списка и обойдем все его элементы с помощью метода forEachRemaining:

import java.util.List; import java.util.Spliterator; public class Main { public static void main(String[] args) { List<String> list = List.of("a", "b", "c", "d", "e"); Spliterator<String> spliterator = list.spliterator(); spliterator.forEachRemaining(System.out::println); } }

Результат выполнения кода:

"a" "b" "c" "d" "e"

Пример

Давайте получим характеристики сплитератора и его приблизительный размер:

import java.util.List; import java.util.Spliterator; public class Main { public static void main(String[] args) { List<Integer> list = List.of(1, 2, 3, 4, 5); Spliterator<Integer> spliterator = list.spliterator(); System.out.println(spliterator.estimateSize()); System.out.println(spliterator.characteristics()); } }

Результат выполнения кода:

5 16464

Пример

Давайте разделим сплитератор на две части с помощью метода trySplit и обойдем каждую часть отдельно:

import java.util.List; import java.util.Spliterator; public class Main { public static void main(String[] args) { List<String> list = List.of("a", "b", "c", "d", "e"); Spliterator<String> first = list.spliterator(); Spliterator<String> second = first.trySplit(); System.out.println("First part:"); first.forEachRemaining(System.out::println); System.out.println("Second part:"); second.forEachRemaining(System.out::println); } }

Результат выполнения кода:

First part: "c" "d" "e" Second part: "a" "b"

Смотрите также

  • интерфейс Iterable,
    который представляет коллекцию для перебора
  • метод iterator,
    который возвращает итератор коллекции
  • интерфейс Spliterator,
    который представляет сплитератор
  • метод tryAdvance,
    который обрабатывает следующий элемент
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить