public static class ObjectLists.SynchronizedList<K> extends java.lang.Object implements ObjectList<K>, java.io.Serializable
| Modifier and Type | Field and Description |
|---|---|
protected ObjectCollection<K> |
collection |
protected ObjectList<K> |
list |
protected java.lang.Object |
sync |
| Modifier | Constructor and Description |
|---|---|
protected |
SynchronizedList(ObjectList<K> l) |
protected |
SynchronizedList(ObjectList<K> l,
java.lang.Object sync) |
| Modifier and Type | Method and Description |
|---|---|
void |
add(int i,
K k) |
boolean |
add(K k) |
boolean |
addAll(java.util.Collection<? extends K> c) |
boolean |
addAll(int index,
java.util.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.
|
void |
clear() |
int |
compareTo(java.util.List<? extends K> o) |
boolean |
contains(java.lang.Object k) |
boolean |
containsAll(java.util.Collection<?> c) |
boolean |
equals(java.lang.Object o) |
void |
forEach(java.util.function.Consumer<? super K> action) |
K |
get(int i) |
void |
getElements(int from,
java.lang.Object[] a,
int offset,
int length)
Copies (hopefully quickly) elements of this type-specific list into the given array.
|
int |
hashCode() |
int |
indexOf(java.lang.Object k) |
boolean |
isEmpty() |
ObjectListIterator<K> |
iterator()
Returns a type-specific iterator on the elements of this collection.
|
int |
lastIndexOf(java.lang.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.
|
java.util.stream.Stream<K> |
parallelStream() |
K |
remove(int i) |
boolean |
remove(java.lang.Object k) |
boolean |
removeAll(java.util.Collection<?> c) |
void |
removeElements(int from,
int to)
Removes (hopefully quickly) elements of this type-specific list.
|
boolean |
removeIf(java.util.function.Predicate<? super K> filter) |
void |
replaceAll(java.util.function.UnaryOperator<K> operator) |
boolean |
retainAll(java.util.Collection<?> c) |
K |
set(int i,
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.
|
int |
size() |
void |
size(int size)
Sets the size of this list.
|
void |
sort(java.util.Comparator<? super K> comparator)
Sorts this list using a sort assured to be stable.
|
it.unimi.dsi.fastutil.objects.ObjectSpliterator<K> |
spliterator()
Returns a type-specific spliterator on the elements of this collection.
|
java.util.stream.Stream<K> |
stream() |
ObjectList<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. |
java.lang.Object[] |
toArray() |
<T> T[] |
toArray(T[] a) |
java.lang.String |
toString() |
void |
unstableSort(java.util.Comparator<? super K> comparator)
Sorts this list using a sort not assured to be stable.
|
clone, finalize, getClass, notify, notifyAll, wait, wait, waitaddAll, addAll, of, of, of, of, of, spliteratorprotected final ObjectList<K> list
protected final ObjectCollection<K> collection
protected final java.lang.Object sync
protected SynchronizedList(ObjectList<K> l, java.lang.Object sync)
protected SynchronizedList(ObjectList<K> l)
public int indexOf(java.lang.Object k)
indexOf in interface java.util.List<K>public int lastIndexOf(java.lang.Object k)
lastIndexOf in interface java.util.List<K>public boolean removeIf(java.util.function.Predicate<? super K> filter)
removeIf in interface java.util.Collection<K>public void replaceAll(java.util.function.UnaryOperator<K> operator)
replaceAll in interface java.util.List<K>public boolean addAll(int index,
java.util.Collection<? extends K> c)
addAll in interface java.util.List<K>public void getElements(int from,
java.lang.Object[] a,
int offset,
int length)
ObjectListgetElements in interface ObjectList<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)
ObjectListremoveElements in interface ObjectList<K>from - the start index (inclusive).to - the end index (exclusive).public void addElements(int index,
K[] a,
int offset,
int length)
ObjectListaddElements in interface ObjectList<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)
ObjectListaddElements in interface ObjectList<K>index - the index at which to add elements.a - the array containing the elements.public void setElements(K[] a)
ObjectListsetElements in interface ObjectList<K>a - the array containing the elements.public void setElements(int index,
K[] a)
ObjectListsetElements in interface ObjectList<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)
ObjectList
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 ObjectList<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 size)
ObjectListIf 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 ObjectList<K>size - the new size.public ObjectListIterator<K> listIterator()
ObjectListlistIterator in interface ObjectList<K>listIterator in interface java.util.List<K>List.listIterator()public ObjectListIterator<K> iterator()
ObjectCollectioniterator in interface ObjectCollection<K>iterator in interface ObjectIterable<K>iterator in interface ObjectList<K>iterator in interface java.lang.Iterable<K>iterator in interface java.util.Collection<K>iterator in interface java.util.List<K>Iterable.iterator()public ObjectListIterator<K> listIterator(int i)
ObjectListlistIterator in interface ObjectList<K>listIterator in interface java.util.List<K>List.listIterator(int)public ObjectList<K> subList(int from, int to)
ObjectListfrom, inclusive, to the index to, exclusive.subList in interface ObjectList<K>subList in interface java.util.List<K>List.subList(int,int)public boolean equals(java.lang.Object o)
public int hashCode()
public int compareTo(java.util.List<? extends K> o)
compareTo in interface java.lang.Comparable<java.util.List<? extends K>>public void sort(java.util.Comparator<? super K> comparator)
ObjectListPass null to sort using natural ordering.
Unless a subclass specifies otherwise, the results of the method if the list is concurrently modified during the sort are unspecified.
sort in interface ObjectList<K>sort in interface java.util.List<K>public void unstableSort(java.util.Comparator<? super K> comparator)
ObjectListList.sort(java.util.Comparator) in that the results are
not assured to be stable, but may be a bit faster.
Pass null to sort using natural ordering.
Unless a subclass specifies otherwise, the results of the method if the list is concurrently modified during the sort are unspecified.
unstableSort in interface ObjectList<K>public boolean add(K k)
add in interface java.util.Collection<K>public boolean contains(java.lang.Object k)
contains in interface java.util.Collection<K>public boolean remove(java.lang.Object k)
remove in interface java.util.Collection<K>public int size()
size in interface java.util.Collection<K>public boolean isEmpty()
isEmpty in interface java.util.Collection<K>public java.lang.Object[] toArray()
toArray in interface java.util.Collection<K>public <T> T[] toArray(T[] a)
toArray in interface java.util.Collection<K>public it.unimi.dsi.fastutil.objects.ObjectSpliterator<K> spliterator()
ObjectCollectionSee Collection.spliterator() for more documentation on the requirements
of the returned spliterator.
spliterator in interface ObjectCollection<K>spliterator in interface ObjectIterable<K>spliterator in interface java.lang.Iterable<K>spliterator in interface java.util.Collection<K>public java.util.stream.Stream<K> stream()
stream in interface java.util.Collection<K>public java.util.stream.Stream<K> parallelStream()
parallelStream in interface java.util.Collection<K>public void forEach(java.util.function.Consumer<? super K> action)
forEach in interface java.lang.Iterable<K>public boolean addAll(java.util.Collection<? extends K> c)
addAll in interface java.util.Collection<K>public boolean containsAll(java.util.Collection<?> c)
containsAll in interface java.util.Collection<K>public boolean removeAll(java.util.Collection<?> c)
removeAll in interface java.util.Collection<K>public boolean retainAll(java.util.Collection<?> c)
retainAll in interface java.util.Collection<K>public void clear()
clear in interface java.util.Collection<K>public java.lang.String toString()
toString in class java.lang.Object