public interface LongObjCursor<V> extends Cursor
long keys and
Object values.
Basic LongObjCursor usage idiom is:
for (LongObjCursor<V> cur = map.cursor(); cur.moveNext();) {
// Work with cur.key() and cur.value()
// Call cur.remove() to remove the current entry
}
See the comparison of iteration ways in the library.
LongObjCursors of immutable maps don't support setValue(Object)
operation. More about mutability profiles.
LongObjMap.cursor()| Modifier and Type | Method and Description |
|---|---|
void |
forEachForward(LongObjConsumer<? super V> action)
Performs the given action for each entry of the iteration after the cursor in forward
direction until all entries have been processed or the action throws an exception.
|
long |
key()
Returns the key of the entry to which the cursor currently points.
|
void |
setValue(V value)
Replaces the value of the entry to which the cursor currently points (optional operation).
|
V |
value()
Returns the value of the entry to which the cursor currently points.
|
void forEachForward(@Nonnull LongObjConsumer<? super V> action)
cur.forEachForward(action) is exact equivalent of
while (cur.moveNext())
action.accept(cur.key(), cur.value());action - the action to be performed for each entrylong key()
Throws IllegalStateException, if the cursor isn't pointing to any entry: if it
is in front of the first entry, after the last, or the current entry has been removed
using Cursor.remove() operation.
IllegalStateException - if this cursor is initially in front of the first entry
and Cursor.moveNext() hasn't been called yet,
or the previous call of moveNext returned false,
or remove() has been performed after the previous cursor movementV value()
Throws IllegalStateException, if the cursor isn't pointing to any entry: if it
is in front of the first entry, after the last, or the current entry has been removed
using Cursor.remove() operation.
IllegalStateException - if this cursor is initially in front of the first entry
and Cursor.moveNext() hasn't been called yet,
or the previous call of moveNext returned false,
or remove() has been performed after the previous cursor movementvoid setValue(V value)
Throws IllegalStateException if the cursor isn't pointing to any entry: if it
is in front of the first entry, after the last, or the current entry has been removed
using Cursor.remove() operation.
value - new value to be stored in the entry to which the cursor currently pointsUnsupportedOperationException - if the setValue operation is not supported
by this cursorIllegalArgumentException - if some property this value prevents it from being stored
in the entries of the iterationIllegalStateException - if this cursor is initially in front of the first entry
and Cursor.moveNext() hasn't been called yet,
or the previous call of moveNext returned false,
or remove() has been performed after the previous cursor movement