public static class ReferenceLists.EmptyList<K> extends ReferenceCollections.EmptyCollection<K> implements ReferenceList<K>, RandomAccess, Serializable, Cloneable
This class may be useful to implement your own in case you subclass a type-specific list.
| Modifier and Type | Method and Description |
|---|---|
void |
add(int index,
K k) |
boolean |
addAll(int i,
Collection<? extends K> c) |
void |
addElements(int index,
K[] a)
Add (hopefully quickly) elements to this type-specific list.
|
void |
addElements(int index,
K[] a,
int offset,
int length)
Add (hopefully quickly) elements to this type-specific list.
|
Object |
clone() |
boolean |
equals(Object o) |
K |
get(int i) |
void |
getElements(int from,
Object[] a,
int offset,
int length)
Copies (hopefully quickly) elements of this type-specific list into the given array.
|
int |
hashCode() |
int |
indexOf(Object k) |
ObjectListIterator<K> |
iterator()
Returns a type-specific iterator on the elements of this collection.
|
int |
lastIndexOf(Object k) |
ObjectListIterator<K> |
listIterator()
Returns a type-specific list iterator on the list.
|
ObjectListIterator<K> |
listIterator(int i)
Returns a type-specific list iterator on the list starting at a given index.
|
K |
remove(int i) |
boolean |
remove(Object k) |
void |
removeElements(int from,
int to)
Removes (hopefully quickly) elements of this type-specific list.
|
K |
set(int index,
K k) |
void |
setElements(int index,
K[] a)
Set (hopefully quickly) elements to match the array given.
|
void |
setElements(int index,
K[] a,
int offset,
int length)
Set (hopefully quickly) elements to match the array given.
|
void |
setElements(K[] a)
Set (hopefully quickly) elements to match the array given.
|
void |
size(int s)
Sets the size of this list.
|
void |
sort(Comparator<? super K> comparator) |
ReferenceList<K> |
subList(int from,
int to)
Returns a type-specific view of the portion of this list from the index
from, inclusive, to the index to, exclusive. |
String |
toString() |
void |
unstableSort(Comparator<? super K> comparator)
Sorts this list using a sort not assured to be stable.
|
addAll, clear, contains, removeAll, retainAll, size, toArrayadd, containsAll, isEmpty, toArrayadd, addAll, clear, contains, containsAll, isEmpty, removeAll, replaceAll, retainAll, size, spliterator, toArray, toArrayparallelStream, removeIf, streampublic boolean remove(Object k)
remove in interface Collection<K>remove in interface List<K>remove in class AbstractCollection<K>public int lastIndexOf(Object k)
lastIndexOf in interface List<K>public boolean addAll(int i,
Collection<? extends K> c)
public void sort(Comparator<? super K> comparator)
public void unstableSort(Comparator<? super K> comparator)
ReferenceListList.sort(java.util.Comparator) in that the results are
not assured to be stable, but may be a bit faster.
Unless a subclass specifies otherwise, the results of the method if the list is concurrently modified during the sort are unspecified.
unstableSort in interface ReferenceList<K>public ObjectListIterator<K> listIterator()
ReferenceListlistIterator in interface ReferenceList<K>listIterator in interface List<K>List.listIterator()public ObjectListIterator<K> iterator()
ReferenceCollectionNote that this specification strengthens the one given in
Iterable.iterator(), which was already
strengthened in the corresponding type-specific class,
but was weakened by the fact that this interface extends Collection.
iterator in interface ObjectIterable<K>iterator in interface ReferenceCollection<K>iterator in interface ReferenceList<K>iterator in interface Iterable<K>iterator in interface Collection<K>iterator in interface List<K>iterator in class ReferenceCollections.EmptyCollection<K>Iterable.iterator()public ObjectListIterator<K> listIterator(int i)
ReferenceListlistIterator in interface ReferenceList<K>listIterator in interface List<K>List.listIterator(int)public ReferenceList<K> subList(int from, int to)
ReferenceListfrom, inclusive, to the index to, exclusive.
Note that this specification strengthens the one given in List.subList(int,int).
subList in interface ReferenceList<K>subList in interface List<K>List.subList(int,int)public void getElements(int from,
Object[] a,
int offset,
int length)
ReferenceListgetElements in interface ReferenceList<K>from - the start index (inclusive).a - the destination array.offset - the offset into the destination array where to store the first element copied.length - the number of elements to be copied.public void removeElements(int from,
int to)
ReferenceListremoveElements in interface ReferenceList<K>from - the start index (inclusive).to - the end index (exclusive).public void addElements(int index,
K[] a,
int offset,
int length)
ReferenceListaddElements in interface ReferenceList<K>index - the index at which to add elements.a - the array containing the elements.offset - the offset of the first element to add.length - the number of elements to add.public void addElements(int index,
K[] a)
ReferenceListaddElements in interface ReferenceList<K>index - the index at which to add elements.a - the array containing the elements.public void setElements(K[] a)
ReferenceListsetElements in interface ReferenceList<K>a - the array containing the elements.public void setElements(int index,
K[] a)
ReferenceListsetElements in interface ReferenceList<K>index - the index at which to start setting elements.a - the array containing the elements.public void setElements(int index,
K[] a,
int offset,
int length)
ReferenceList
ListIterator iter = listIterator(index);
int i = 0;
while (i < length) {
iter.next();
iter.set(a[offset + i++]);
}
However, the exact implementation may be more efficient, taking into account
whether random access is faster or not, or at the discretion of subclasses,
abuse internals.setElements in interface ReferenceList<K>index - the index at which to start setting elements.a - the array containing the elementsoffset - the offset of the first element to add.length - the number of elements to add.public void size(int s)
ReferenceListIf the specified size is smaller than the current size, the last elements are
discarded. Otherwise, they are filled with 0/null/false.
size in interface ReferenceList<K>s - the new size.public int hashCode()
hashCode in interface Collection<K>hashCode in interface List<K>hashCode in class ReferenceCollections.EmptyCollection<K>public boolean equals(Object o)
equals in interface Collection<K>equals in interface List<K>equals in class ReferenceCollections.EmptyCollection<K>public String toString()
toString in class AbstractReferenceCollection<K>