Interface ShortIterable

All Superinterfaces:
Iterable<Short>
All Known Subinterfaces:
ShortBidirectionalIterable, ShortBigList, ShortCollection, ShortList, ShortSet, ShortSortedSet
All Known Implementing Classes:
AbstractShortBigList, AbstractShortBigList.ShortSubList, AbstractShortCollection, AbstractShortList, AbstractShortList.ShortSubList, AbstractShortSet, AbstractShortSortedSet, ShortArrayList, ShortArraySet, ShortAVLTreeSet, ShortBigArrayBigList, ShortBigLists.EmptyBigList, ShortBigLists.ListBigList, ShortBigLists.Singleton, ShortBigLists.SynchronizedBigList, ShortBigLists.UnmodifiableBigList, ShortCollections.EmptyCollection, ShortCollections.IterableCollection, ShortCollections.SynchronizedCollection, ShortCollections.UnmodifiableCollection, ShortLinkedOpenCustomHashSet, ShortLinkedOpenHashSet, ShortLists.EmptyList, ShortLists.Singleton, ShortLists.SynchronizedList, ShortLists.SynchronizedRandomAccessList, ShortLists.UnmodifiableList, ShortLists.UnmodifiableRandomAccessList, ShortOpenCustomHashSet, ShortOpenHashSet, ShortRBTreeSet, ShortSets.EmptySet, ShortSets.Singleton, ShortSets.SynchronizedSet, ShortSets.UnmodifiableSet, ShortSortedSets.EmptySet, ShortSortedSets.Singleton, ShortSortedSets.SynchronizedSortedSet, ShortSortedSets.UnmodifiableSortedSet

public interface ShortIterable
extends Iterable<Short>
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:
Iterable
  • Method Summary

    Modifier and Type Method Description
    default void forEach​(Consumer<? super Short> action)
    Deprecated.
    Please use the corresponding type-specific method instead.
    default void forEach​(IntConsumer action)
    Performs the given action for each element of this type-specific Iterable until all elements have been processed or the action throws an exception.
    ShortIterator iterator()
    Returns a type-specific iterator.

    Methods inherited from interface java.lang.Iterable

    spliterator