|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectcom.jme3.util.SafeArrayList<E>
public class SafeArrayList<E>
Provides a list with similar modification semantics to java.util.concurrent's CopyOnWriteArrayList except that it is not concurrent and also provides direct access to the current array. This List allows modification of the contents while iterating as any iterators will be looking at a snapshot of the list at the time they were created. Similarly, access the raw internal array is only presenting a snap shot and so can be safely iterated while the list is changing.
All modifications, including set() operations will cause a copy of the data to be created that replaces the old version. Because this list is not designed for threading concurrency it further optimizes the "many modifications" case by buffering them as a normal ArrayList until the next time the contents are accessed.
Normal list modification performance should be equal to ArrayList in a many situations and always better than CopyOnWriteArrayList. Optimum usage is when modifications are done infrequently or in batches... as is often the case in a scene graph. Read operations perform superior to all other methods as the array can be accessed directly.
Important caveats over normal java.util.Lists:
コンストラクタの概要 | |
---|---|
SafeArrayList(java.lang.Class<E> elementType)
|
|
SafeArrayList(java.lang.Class<E> elementType,
java.util.Collection<? extends E> c)
|
メソッドの概要 | ||
---|---|---|
boolean |
add(E e)
|
|
void |
add(int index,
E element)
|
|
boolean |
addAll(java.util.Collection<? extends E> c)
|
|
boolean |
addAll(int index,
java.util.Collection<? extends E> c)
|
|
void |
clear()
|
|
boolean |
contains(java.lang.Object o)
|
|
boolean |
containsAll(java.util.Collection<?> c)
|
|
boolean |
equals(java.lang.Object o)
|
|
E |
get(int index)
|
|
E[] |
getArray()
Returns a current snapshot of this List's backing array that is guaranteed not to change through further List manipulation. |
|
int |
hashCode()
|
|
int |
indexOf(java.lang.Object o)
|
|
boolean |
isEmpty()
|
|
java.util.Iterator<E> |
iterator()
|
|
int |
lastIndexOf(java.lang.Object o)
|
|
java.util.ListIterator<E> |
listIterator()
|
|
java.util.ListIterator<E> |
listIterator(int index)
|
|
E |
remove(int index)
|
|
boolean |
remove(java.lang.Object o)
|
|
boolean |
removeAll(java.util.Collection<?> c)
|
|
boolean |
retainAll(java.util.Collection<?> c)
|
|
E |
set(int index,
E element)
|
|
int |
size()
|
|
java.util.List<E> |
subList(int fromIndex,
int toIndex)
|
|
java.lang.Object[] |
toArray()
|
|
|
toArray(T[] a)
|
クラス java.lang.Object から継承されたメソッド |
---|
getClass, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public SafeArrayList(java.lang.Class<E> elementType)
public SafeArrayList(java.lang.Class<E> elementType, java.util.Collection<? extends E> c)
メソッドの詳細 |
---|
public final E[] getArray()
public final int size()
java.util.Collection<E>
内の size
java.util.List<E>
内の size
public final boolean isEmpty()
java.util.Collection<E>
内の isEmpty
java.util.List<E>
内の isEmpty
public boolean contains(java.lang.Object o)
java.util.Collection<E>
内の contains
java.util.List<E>
内の contains
public java.util.Iterator<E> iterator()
java.lang.Iterable<E>
内の iterator
java.util.Collection<E>
内の iterator
java.util.List<E>
内の iterator
public java.lang.Object[] toArray()
java.util.Collection<E>
内の toArray
java.util.List<E>
内の toArray
public <T> T[] toArray(T[] a)
java.util.Collection<E>
内の toArray
java.util.List<E>
内の toArray
public boolean add(E e)
java.util.Collection<E>
内の add
java.util.List<E>
内の add
public boolean remove(java.lang.Object o)
java.util.Collection<E>
内の remove
java.util.List<E>
内の remove
public boolean containsAll(java.util.Collection<?> c)
java.util.Collection<E>
内の containsAll
java.util.List<E>
内の containsAll
public boolean addAll(java.util.Collection<? extends E> c)
java.util.Collection<E>
内の addAll
java.util.List<E>
内の addAll
public boolean addAll(int index, java.util.Collection<? extends E> c)
java.util.List<E>
内の addAll
public boolean removeAll(java.util.Collection<?> c)
java.util.Collection<E>
内の removeAll
java.util.List<E>
内の removeAll
public boolean retainAll(java.util.Collection<?> c)
java.util.Collection<E>
内の retainAll
java.util.List<E>
内の retainAll
public void clear()
java.util.Collection<E>
内の clear
java.util.List<E>
内の clear
public boolean equals(java.lang.Object o)
java.util.Collection<E>
内の equals
java.util.List<E>
内の equals
java.lang.Object
内の equals
public int hashCode()
java.util.Collection<E>
内の hashCode
java.util.List<E>
内の hashCode
java.lang.Object
内の hashCode
public final E get(int index)
java.util.List<E>
内の get
public E set(int index, E element)
java.util.List<E>
内の set
public void add(int index, E element)
java.util.List<E>
内の add
public E remove(int index)
java.util.List<E>
内の remove
public int indexOf(java.lang.Object o)
java.util.List<E>
内の indexOf
public int lastIndexOf(java.lang.Object o)
java.util.List<E>
内の lastIndexOf
public java.util.ListIterator<E> listIterator()
java.util.List<E>
内の listIterator
public java.util.ListIterator<E> listIterator(int index)
java.util.List<E>
内の listIterator
public java.util.List<E> subList(int fromIndex, int toIndex)
java.util.List<E>
内の subList
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |