public abstract class RandomAccessIntList extends AbstractIntCollection implements IntList
IntList
s backed
by random access structures like arrays.
Read-only subclasses must override get(int)
and size()
. Mutable subclasses
should also override set(int, int)
. Variably-sized
subclasses should also override add(int)
and removeElementAt(int)
. All other methods
have at least some base implementation derived from
these. Subclasses may choose to override these methods
to provide a more efficient implementation.Modifier and Type | Class and Description |
---|---|
protected static class |
RandomAccessIntList.RandomAccessIntListIterator |
protected static class |
RandomAccessIntList.RandomAccessIntSubList |
Modifier | Constructor and Description |
---|---|
protected |
RandomAccessIntList()
Constructs an empty list.
|
Modifier and Type | Method and Description |
---|---|
boolean |
add(int element)
Unsupported in this base implementation.
|
void |
add(int index,
int element)
Unsupported in this implementation.
|
boolean |
addAll(int index,
IntCollection collection)
Inserts all of the elements in the specified collection into me,
at the specified position (optional operation).
|
boolean |
equals(Object that)
Returns
true iff that is an IntList
that contains the same elements in the same order as me. |
abstract int |
get(int index)
Returns the value of the element at the specified position
within me.
|
protected int |
getModCount()
Get my count of structural modifications.
|
int |
hashCode()
Returns my hash code.
|
protected void |
incrModCount()
Increment my count of structural modifications.
|
int |
indexOf(int element)
Returns the index of the first occurrence
of the specified element within me,
or
-1 if I do not contain
the element. |
IntIterator |
iterator()
Returns an
iterator over all my elements. |
int |
lastIndexOf(int element)
Returns the index of the last occurrence
of the specified element within me,
or -1 if I do not contain the element.
|
IntListIterator |
listIterator()
Returns a
bidirectional iterator
over all my elements, in the appropriate sequence. |
IntListIterator |
listIterator(int index)
Returns a
bidirectional iterator
over all my elements, in the appropriate sequence,
starting at the specified position. |
int |
removeElementAt(int index)
Unsupported in this implementation.
|
int |
set(int index,
int element)
Unsupported in this implementation.
|
abstract int |
size()
Returns the number of elements I contain.
|
IntList |
subList(int fromIndex,
int toIndex)
Returns a view of the elements within me
between the specified fromIndex, inclusive, and
toIndex, exclusive.
|
String |
toString() |
addAll, clear, contains, containsAll, isEmpty, removeAll, removeElement, retainAll, toArray, toArray
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
addAll, clear, contains, containsAll, isEmpty, removeAll, removeElement, retainAll, toArray, toArray
protected RandomAccessIntList()
public abstract int get(int index)
IntList
public abstract int size()
IntCollection
size
in interface IntCollection
size
in class AbstractIntCollection
public int removeElementAt(int index)
removeElementAt
in interface IntList
index
- the index of the element to removeUnsupportedOperationException
- since this method is not supportedpublic int set(int index, int element)
set
in interface IntList
index
- the index of the element to changeelement
- the value to be stored at the specified positionUnsupportedOperationException
- since this method is not supportedpublic void add(int index, int element)
add
in interface IntList
index
- the index at which to insert the elementelement
- the value to insertUnsupportedOperationException
- since this method is not supportedpublic boolean add(int element)
AbstractIntCollection
add
in interface IntCollection
add
in interface IntList
add
in class AbstractIntCollection
element
- the value whose presence within me is to be ensuredtrue
iff I changed as a result of this callpublic boolean addAll(int index, IntCollection collection)
IntList
iterator
.addAll
in interface IntList
index
- the index at which to insert the first element from
the specified collectioncollection
- the IntCollection
of elements to addtrue
iff I changed as a result of this callpublic int indexOf(int element)
IntList
-1
if I do not contain
the element.public int lastIndexOf(int element)
IntList
lastIndexOf
in interface IntList
element
- the element to search for-1
if no such matching element can be foundpublic IntIterator iterator()
IntCollection
iterator
over all my elements.
This base interface places no constraints on the order
in which the elements are returned by the returned iterator.iterator
in interface IntCollection
iterator
in interface IntList
iterator
in class AbstractIntCollection
iterator
over all my elements.public IntListIterator listIterator()
IntList
bidirectional iterator
over all my elements, in the appropriate sequence.listIterator
in interface IntList
public IntListIterator listIterator(int index)
IntList
bidirectional iterator
over all my elements, in the appropriate sequence,
starting at the specified position. The
specified index indicates the first
element that would be returned by an initial
call to the
next
method. An initial call to the
previous
method would return the element with the specified
index minus one.listIterator
in interface IntList
public IntList subList(int fromIndex, int toIndex)
IntList
IntList
is backed by me, so that any changes in
the returned list are reflected in me, and vice-versa.
The returned list supports all of the optional operations
that I support.
Note that when fromIndex == toIndex
,
the returned list is initially empty, and when
fromIndex == 0 && toIndex == size()
the returned list is my "improper" sublist, containing all my elements.
The semantics of the returned list become undefined
if I am structurally modified in any way other than
via the returned list.public boolean equals(Object that)
IntList
true
iff that is an IntList
that contains the same elements in the same order as me.
In other words, returns true
iff that is
an IntList
that has the same size
as me,
and for which the elements returned by its
iterator
are equal (==
) to
the corresponding elements within me.
(This contract ensures that this method works properly across
different implementations of the IntList
interface.)public int hashCode()
IntList
IntList
is defined to be the
result of the following calculation:
int hash = 1; for(IntIterator iter = iterator(); iter.hasNext(); ) { hash = 31*hash + iter.next(); }This contract ensures that this method is consistent with
equals
and with the
hashCode
method of a List
of Integer
s.protected int getModCount()
protected void incrModCount()
Copyright © 2002-2013 The Apache Software Foundation. All Rights Reserved.