Interface CharIterable
-
- All Known Subinterfaces:
CharBidirectionalIterable,CharBigList,CharCollection,CharList,CharSet,CharSortedSet
- All Known Implementing Classes:
AbstractCharBigList,AbstractCharBigList.CharSubList,AbstractCharCollection,AbstractCharList,AbstractCharList.CharSubList,AbstractCharSet,AbstractCharSortedSet,CharArrayList,CharArraySet,CharAVLTreeSet,CharBigArrayBigList,CharBigLists.EmptyBigList,CharBigLists.ListBigList,CharBigLists.Singleton,CharBigLists.SynchronizedBigList,CharBigLists.UnmodifiableBigList,CharCollections.EmptyCollection,CharCollections.IterableCollection,CharCollections.SynchronizedCollection,CharCollections.UnmodifiableCollection,CharLinkedOpenCustomHashSet,CharLinkedOpenHashSet,CharLists.EmptyList,CharLists.Singleton,CharLists.SynchronizedList,CharLists.SynchronizedRandomAccessList,CharLists.UnmodifiableList,CharLists.UnmodifiableRandomAccessList,CharOpenCustomHashSet,CharOpenHashSet,CharRBTreeSet,CharSets.EmptySet,CharSets.Singleton,CharSets.SynchronizedSet,CharSets.UnmodifiableSet,CharSortedSets.EmptySet,CharSortedSets.Singleton,CharSortedSets.SynchronizedSortedSet,CharSortedSets.UnmodifiableSortedSet
public interface CharIterable extends Iterable<Character>
A type-specificIterablethat strengthens that specification ofiterator()andforEach(Consumer).Note that whenever there exist a primitive consumer in
java.util.function(e.g.,IntConsumer), trying to access any version offorEach(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 inintIterable.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”
forstatements with primitive-type loop variables; however, what is (unfortunately) really happening is that at each iteration an unboxing (and, in the case offastutiltype-specific data structures, a boxing) will be performed. Watch out.- See Also:
Iterable
-
-
Method Summary
Modifier and Type Method Description default voidforEach(Consumer<? super Character> action)Deprecated.Please use the corresponding type-specific method instead.default voidforEach(IntConsumer action)Performs the given action for each element of this type-specificIterableuntil all elements have been processed or the action throws an exception.CharIteratoriterator()Returns a type-specific iterator.-
Methods inherited from interface java.lang.Iterable
spliterator
-
-
-
-
Method Detail
-
iterator
CharIterator iterator()
Returns a type-specific iterator.Note that this specification strengthens the one given in
Iterable.iterator().- Specified by:
iteratorin interfaceIterable<Character>- Returns:
- a type-specific iterator.
- See Also:
Iterable.iterator()
-
forEach
default void forEach(IntConsumer action)
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:
Iterable.forEach(java.util.function.Consumer)
-
-