it.unimi.dsi.fastutil.chars
Class AbstractCharBidirectionalIterator

java.lang.Object
  extended by it.unimi.dsi.fastutil.chars.AbstractCharIterator
      extended by it.unimi.dsi.fastutil.chars.AbstractCharBidirectionalIterator
All Implemented Interfaces:
BidirectionalIterator<java.lang.Character>, CharBidirectionalIterator, CharIterator, ObjectBidirectionalIterator<java.lang.Character>, ObjectIterator<java.lang.Character>, java.util.Iterator<java.lang.Character>
Direct Known Subclasses:
AbstractCharListIterator, CharIterators.UnmodifiableBidirectionalIterator

public abstract class AbstractCharBidirectionalIterator
extends AbstractCharIterator
implements CharBidirectionalIterator

An abstract class facilitating the creation of type-specific bidirectional iterators.

To create a type-specific bidirectional iterator, besides what is needed for an iterator you need both a method returning the previous element as primitive type and a method returning the previous element as an object. However, if you inherit from this class you need just one (anyone).

This class implements also a trivial version of back(int) that uses type-specific methods.


Method Summary
 int back(int n)
          This method just iterates the type-specific version of previous() for at most n times, stopping if BidirectionalIterator.hasPrevious() becomes false.
 java.lang.Character previous()
          Delegates to the corresponding type-specific method.
 char previousChar()
          Delegates to the corresponding generic method.
 
Methods inherited from class it.unimi.dsi.fastutil.chars.AbstractCharIterator
next, nextChar, remove, skip
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface it.unimi.dsi.fastutil.chars.CharIterator
nextChar, skip
 
Methods inherited from interface java.util.Iterator
hasNext, next, remove
 
Methods inherited from interface it.unimi.dsi.fastutil.objects.ObjectIterator
skip
 
Methods inherited from interface java.util.Iterator
hasNext, next, remove
 
Methods inherited from interface it.unimi.dsi.fastutil.BidirectionalIterator
hasPrevious
 
Methods inherited from interface java.util.Iterator
hasNext, next, remove
 

Method Detail

previousChar

public char previousChar()
Delegates to the corresponding generic method.

Specified by:
previousChar in interface CharBidirectionalIterator
Returns:
the previous element in the iteration.
See Also:
ListIterator.previous()

previous

public java.lang.Character previous()
Delegates to the corresponding type-specific method.

Specified by:
previous in interface BidirectionalIterator<java.lang.Character>
Returns:
the previous element from the collection.
See Also:
ListIterator.previous()

back

public int back(int n)
This method just iterates the type-specific version of previous() for at most n times, stopping if BidirectionalIterator.hasPrevious() becomes false.

Specified by:
back in interface CharBidirectionalIterator
Specified by:
back in interface ObjectBidirectionalIterator<java.lang.Character>
Parameters:
n - the number of elements to skip back.
Returns:
the number of elements actually skipped.
See Also:
Iterator.next()