-
- Type Parameters:
A- тип элементов в итераторе
- All Superinterfaces:
Iterable<A>
- All Known Subinterfaces:
EventList<E>,EventSet<E>,PreEventList<E>
- All Known Implementing Classes:
ArrayIterable,BasicEventList,BasicEventSet,BiProductIterable,ClassSet,EmptyIterable,EterableProxy,FilterIterable,ImTreeWalk.Walk,LimitIterable,MapIterable,MappedList,SingleIterable,StdEventList,UnionIterable
public interface Eterable<A> extends Iterable<A>
Расширение стандартного итератора
-
-
Method Summary
All Methods Static Methods Instance Methods Default Methods Modifier and Type Method Description default longcount()Посчет кол-ва элементовstatic <A> Eterable<A>empty()"Пустой" Итераторdefault Eterable<A>filter(Predicate<A> filter)Фильтрация исходных данныхdefault Optional<A>first()Возвращает первый элементdefault Eterable<A>limit(long limit)Ограничение исходного набораdefault <B> Eterable<B>map(Function<A,B> map)Отображения одного набора данных на другойdefault Eterable<A>notNull()Фильтрация исходного набора - удаление null значенийstatic <A> Eterable<A>of(A... a)Итератор по массивуstatic <A> Eterable<A>of(Iterable<? extends A> a)Создает итераторdefault <B> Eterable<Pair<A,B>>product(Iterable<B> source)Декартово произведениеdefault <B,C,D,E>
Eterable<A>product(Iterable<B> source1, Iterable<C> source2, Iterable<D> source3, Iterable<E> source4, QuintConsumer<A,B,C,D,E> consumer)Декартово произведениеdefault <B,C,D>
Eterable<A>product(Iterable<B> source1, Iterable<C> source2, Iterable<D> source3, QuadConsumer<A,B,C,D> consumer)Декартово произведениеdefault <B,C>
Eterable<A>product(Iterable<B> source1, Iterable<C> source2, TripleConsumer<A,B,C> consumer)Декартово произведениеdefault <B> Eterable<A>product(Iterable<B> source, BiConsumer<A,B> consumer)Декартово произведениеdefault <R> Rreduce(R initial, BiFunction<R,A,R> reducer)Свертка значенийstatic <A> Eterable<A>single(A a)Создает итератор по единичному значениюdefault List<A>toList()Преобразование в списокstatic <A> TreeIterBuilder<A>tree(A root, Function<A,Iterable<? extends A>> follow)Создание итератора по деревуdefault Eterable<A>union(Iterable<A>... iter)Присоединение данных к исходнымdefault Eterable<A>union(Iterable<Iterable<A>> iter)Присоединение данных к исходным-
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
-
-
-
-
Method Detail
-
single
static <A> Eterable<A> single(A a)
Создает итератор по единичному значению- Type Parameters:
A- тип значения- Parameters:
a- значение- Returns:
- итератор
-
of
static <A> Eterable<A> of(A... a)
Итератор по массиву- Type Parameters:
A- тип элементов в массиве- Parameters:
a- массив- Returns:
- итератор
-
of
static <A> Eterable<A> of(Iterable<? extends A> a)
Создает итератор- Type Parameters:
A- тип элементов- Parameters:
a- исходный итератор- Returns:
- итератор
-
empty
static <A> Eterable<A> empty()
"Пустой" Итератор- Type Parameters:
A- тип элементов- Returns:
- итератор
-
filter
default Eterable<A> filter(Predicate<A> filter)
Фильтрация исходных данных- Parameters:
filter- фильтр- Returns:
- итератор
-
notNull
default Eterable<A> notNull()
Фильтрация исходного набора - удаление null значений- Returns:
- итератор
-
union
default Eterable<A> union(Iterable<A>... iter)
Присоединение данных к исходным- Parameters:
iter- присоединяемые данные- Returns:
- итератор
-
union
default Eterable<A> union(Iterable<Iterable<A>> iter)
Присоединение данных к исходным- Parameters:
iter- присоединяемые данные- Returns:
- итератор
-
map
default <B> Eterable<B> map(Function<A,B> map)
Отображения одного набора данных на другой- Type Parameters:
B- целевой тип данных- Parameters:
map- фунция отображения- Returns:
- итератор
-
limit
default Eterable<A> limit(long limit)
Ограничение исходного набора- Parameters:
limit- максимаьлное кол-во выбираемых значений- Returns:
- кол-во
-
product
default <B> Eterable<Pair<A,B>> product(Iterable<B> source)
Декартово произведение- Type Parameters:
B- Тип дополнительного множества- Parameters:
source- множество на которое производиться умножение- Returns:
- Декартово произведение
-
product
default <B> Eterable<A> product(Iterable<B> source, BiConsumer<A,B> consumer)
Декартово произведение- Type Parameters:
B- Тип дополнительного множества- Parameters:
source- множество на которое производиться умножениеconsumer- сторона которая принимает произведение- Returns:
- Исходный итератор (self ссылка)
-
product
default <B,C> Eterable<A> product(Iterable<B> source1, Iterable<C> source2, TripleConsumer<A,B,C> consumer)
Декартово произведение- Type Parameters:
B- Тип дополнительного множестваC- Тип дополнительного множества- Parameters:
source1- множество на которое производиться умножениеsource2- множество на которое производиться умножениеconsumer- сторона которая принимает произведение- Returns:
- Исходный итератор (self ссылка)
-
product
default <B,C,D> Eterable<A> product(Iterable<B> source1, Iterable<C> source2, Iterable<D> source3, QuadConsumer<A,B,C,D> consumer)
Декартово произведение- Type Parameters:
B- Тип дополнительного множестваC- Тип дополнительного множестваD- Тип дополнительного множества- Parameters:
source1- множество на которое производиться умножениеsource2- множество на которое производиться умножениеsource3- множество на которое производиться умножениеconsumer- сторона которая принимает произведение- Returns:
- Исходный итератор (self ссылка)
-
product
default <B,C,D,E> Eterable<A> product(Iterable<B> source1, Iterable<C> source2, Iterable<D> source3, Iterable<E> source4, QuintConsumer<A,B,C,D,E> consumer)
Декартово произведение- Type Parameters:
B- Тип дополнительного множестваC- Тип дополнительного множестваD- Тип дополнительного множестваE- Тип дополнительного множества- Parameters:
source1- множество на которое производиться умножениеsource2- множество на которое производиться умножениеsource3- множество на которое производиться умножениеsource4- множество на которое производиться умножениеconsumer- сторона которая принимает произведение- Returns:
- Исходный итератор (self ссылка)
-
tree
static <A> TreeIterBuilder<A> tree(A root, Function<A,Iterable<? extends A>> follow)
Создание итератора по дереву- Type Parameters:
A- тип узла дерева- Parameters:
root- кореньfollow- следование- Returns:
- создание итератора
-
count
default long count()
Посчет кол-ва элементов- Returns:
- кол-во элементов
-
reduce
default <R> R reduce(R initial, BiFunction<R,A,R> reducer)Свертка значений- Type Parameters:
R- Тип результата- Parameters:
initial- начальное значениеreducer- функция светки- Returns:
- результат
-
-