Interface BooleanIterable
- All Known Subinterfaces:
BooleanBidirectionalIterable, BooleanBigList, BooleanCollection, BooleanList, BooleanSet
- All Known Implementing Classes:
AbstractBooleanBigList, AbstractBooleanBigList.BooleanRandomAccessSubList, AbstractBooleanBigList.BooleanSubList, AbstractBooleanCollection, AbstractBooleanList, AbstractBooleanList.BooleanRandomAccessSubList, AbstractBooleanList.BooleanSubList, AbstractBooleanSet, BooleanArrayList, BooleanArraySet, BooleanBigArrayBigList, BooleanBigLists.EmptyBigList, BooleanBigLists.ListBigList, BooleanBigLists.Singleton, BooleanBigLists.SynchronizedBigList, BooleanBigLists.UnmodifiableBigList, BooleanCollections.EmptyCollection, BooleanCollections.IterableCollection, BooleanImmutableList, BooleanLists.EmptyList, BooleanLists.Singleton, BooleanLists.SynchronizedList, BooleanLists.SynchronizedRandomAccessList, BooleanLists.UnmodifiableList, BooleanLists.UnmodifiableRandomAccessList, BooleanOpenHashSet, BooleanSets.EmptySet, BooleanSets.Singleton, BooleanSets.SynchronizedSet, BooleanSets.UnmodifiableSet
A type-specific
Iterable that strengthens that specification of iterator() and forEach(Consumer).
Note that whenever there exist a primitive consumer in java.util.function (e.g., IntConsumer),
trying to access any version of forEach(Consumer) using a lambda expression with untyped arguments
will generate an ambiguous method error. This can be easily solved by specifying the type of the argument, as in
intIterable.forEach((int x) -> { // Do something with x });
The same problem plagues, for example, PrimitiveIterator.OfInt.forEachRemaining(java.util.function.IntConsumer).
Warning: Java will let you write “colon” for statements with primitive-type
loop variables; however, what is (unfortunately) really happening is that at each iteration an
unboxing (and, in the case of fastutil type-specific data structures, a boxing) will be performed. Watch out.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidforEach(BooleanConsumer action) Performs the given action for each element of this type-specificIterableuntil all elements have been processed or the action throws an exception.default voidDeprecated.Please use the corresponding type-specific method instead.iterator()Returns a type-specific iterator.default BooleanSpliteratorReturns a type-specific spliterator on the elements of this iterable.
-
Method Details
-
iterator
BooleanIterator iterator()Returns a type-specific iterator.- Specified by:
iteratorin interfaceIterable<Boolean>- Returns:
- a type-specific iterator.
- See Also:
- API Notes:
- Note that this specification strengthens the one given in
Iterable.iterator().
-
spliterator
Returns a type-specific spliterator on the elements of this iterable.- Specified by:
spliteratorin interfaceIterable<Boolean>- Returns:
- a type-specific spliterator on the elements of this iterable.
- Since:
- 8.5.0
- API Notes:
- Note that this specification strengthens the one given in
Iterable.spliterator().
-
forEach
Performs the given action for each element of this type-specificIterableuntil all elements have been processed or the action throws an exception.- Parameters:
action- the action to be performed for each element.- Since:
- 8.0.0
- See Also:
- API Notes:
- Implementing classes should generally override this method, and take the default implementation of the other overloads which will delegate to this method (after proper conversions).
-
forEach
-