Class SingletonListIterator<E>
java.lang.Object
org.apache.commons.collections4.iterators.SingletonListIterator<E>
- All Implemented Interfaces:
Iterator<E>
,ListIterator<E>
,OrderedIterator<E>
,ResettableIterator<E>
,ResettableListIterator<E>
SingletonIterator
is an ListIterator
over a single
object instance.- Since:
- 2.1
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Add always throwsUnsupportedOperationException
.boolean
hasNext()
Is another object available from the iterator?boolean
Is a previous object available from the iterator?next()
Get the next object from the iterator.int
Returns the index of the element that would be returned by a subsequent call tonext
.previous()
Get the previous object from the iterator.int
Returns the index of the element that would be returned by a subsequent call toprevious
.void
remove()
Remove the object from this iterator.void
reset()
Reset the iterator back to the start.void
Set sets the value of the singleton.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Iterator
forEachRemaining
-
Field Details
-
beforeFirst
private boolean beforeFirst -
nextCalled
private boolean nextCalled -
removed
private boolean removed -
object
-
-
Constructor Details
-
SingletonListIterator
Constructs a newSingletonListIterator
.- Parameters:
object
- the single object to return from the iterator
-
-
Method Details
-
hasNext
public boolean hasNext()Is another object available from the iterator?This returns true if the single object hasn't been returned yet.
-
hasPrevious
public boolean hasPrevious()Is a previous object available from the iterator?This returns true if the single object has been returned.
- Specified by:
hasPrevious
in interfaceListIterator<E>
- Specified by:
hasPrevious
in interfaceOrderedIterator<E>
- Returns:
- true if the single object has been returned
-
nextIndex
public int nextIndex()Returns the index of the element that would be returned by a subsequent call tonext
.- Specified by:
nextIndex
in interfaceListIterator<E>
- Returns:
- 0 or 1 depending on current state.
-
previousIndex
public int previousIndex()Returns the index of the element that would be returned by a subsequent call toprevious
. A return value of -1 indicates that the iterator is currently at the start.- Specified by:
previousIndex
in interfaceListIterator<E>
- Returns:
- 0 or -1 depending on current state.
-
next
Get the next object from the iterator.This returns the single object if it hasn't been returned yet.
- Specified by:
next
in interfaceIterator<E>
- Specified by:
next
in interfaceListIterator<E>
- Returns:
- the single object
- Throws:
NoSuchElementException
- if the single object has already been returned
-
previous
Get the previous object from the iterator.This returns the single object if it has been returned.
- Specified by:
previous
in interfaceListIterator<E>
- Specified by:
previous
in interfaceOrderedIterator<E>
- Returns:
- the single object
- Throws:
NoSuchElementException
- if the single object has not already been returned
-
remove
public void remove()Remove the object from this iterator.- Specified by:
remove
in interfaceIterator<E>
- Specified by:
remove
in interfaceListIterator<E>
- Throws:
IllegalStateException
- if thenext
orprevious
method has not yet been called, or theremove
method has already been called after the last call tonext
orprevious
.
-
add
Add always throwsUnsupportedOperationException
.- Specified by:
add
in interfaceListIterator<E>
- Parameters:
obj
- the object to add- Throws:
UnsupportedOperationException
- always
-
set
Set sets the value of the singleton.- Specified by:
set
in interfaceListIterator<E>
- Parameters:
obj
- the object to set- Throws:
IllegalStateException
- ifnext
has not been called or the object has been removed
-
reset
public void reset()Reset the iterator back to the start.- Specified by:
reset
in interfaceResettableIterator<E>
-