Package it.unimi.dsi.fastutil.bytes
Class ByteIterators.AbstractIndexBasedIterator
java.lang.Object
it.unimi.dsi.fastutil.bytes.AbstractByteIterator
it.unimi.dsi.fastutil.bytes.ByteIterators.AbstractIndexBasedIterator
- All Implemented Interfaces:
ByteIterator
,Iterator<Byte>
,PrimitiveIterator<Byte,
ByteConsumer>
- Direct Known Subclasses:
ByteIterators.AbstractIndexBasedListIterator
- Enclosing class:
ByteIterators
A skeletal implementation for an iterator backed by an index-based data store. High performance
concrete implementations (like the main Iterator of ArrayList) generally should avoid using this
and just implement the interface directly, but should be decent for less performance critical
implementations.
This class is only appropriate for sequences that are at most Integer.MAX_VALUE
long. If
your backing data store can be bigger then this, consider the equivalently named class in the
type specific BigListIterators
class.
As the abstract methods in this class are used in inner loops, it is generally a good idea to
override the class as final
as to encourage the JVM to inline them (or alternatively,
override the abstract methods as final).
-
Nested Class Summary
Nested classes/interfaces inherited from interface java.util.PrimitiveIterator
PrimitiveIterator.OfDouble, PrimitiveIterator.OfInt, PrimitiveIterator.OfLong
-
Method Summary
Modifier and TypeMethodDescriptionvoid
forEachRemaining
(ByteConsumer action) Performs the given action for each remaining element until all elements have been processed or the action throws an exception.boolean
hasNext()
byte
nextByte()
Returns the next element as a primitive type.void
remove()
int
skip
(int n) Skips the given number of elements.Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface it.unimi.dsi.fastutil.bytes.ByteIterator
forEachRemaining, forEachRemaining, next
-
Method Details
-
hasNext
public boolean hasNext() -
nextByte
public byte nextByte()Description copied from interface:ByteIterator
Returns the next element as a primitive type.- Returns:
- the next element in the iteration.
- See Also:
-
remove
public void remove() -
forEachRemaining
Description copied from interface:ByteIterator
Performs the given action for each remaining element until all elements have been processed or the action throws an exception.- Parameters:
action
- the action to be performed for each element.- See Also:
-
skip
public int skip(int n) Description copied from interface:ByteIterator
Skips the given number of elements.The effect of this call is exactly the same as that of calling
ByteIterator.next()
forn
times (possibly stopping ifIterator.hasNext()
becomes false).- Parameters:
n
- the number of elements to skip.- Returns:
- the number of elements actually skipped.
- See Also:
-