|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
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> 内の sizejava.util.List<E> 内の sizepublic final boolean isEmpty()
java.util.Collection<E> 内の isEmptyjava.util.List<E> 内の isEmptypublic boolean contains(java.lang.Object o)
java.util.Collection<E> 内の containsjava.util.List<E> 内の containspublic java.util.Iterator<E> iterator()
java.lang.Iterable<E> 内の iteratorjava.util.Collection<E> 内の iteratorjava.util.List<E> 内の iteratorpublic java.lang.Object[] toArray()
java.util.Collection<E> 内の toArrayjava.util.List<E> 内の toArraypublic <T> T[] toArray(T[] a)
java.util.Collection<E> 内の toArrayjava.util.List<E> 内の toArraypublic boolean add(E e)
java.util.Collection<E> 内の addjava.util.List<E> 内の addpublic boolean remove(java.lang.Object o)
java.util.Collection<E> 内の removejava.util.List<E> 内の removepublic boolean containsAll(java.util.Collection<?> c)
java.util.Collection<E> 内の containsAlljava.util.List<E> 内の containsAllpublic boolean addAll(java.util.Collection<? extends E> c)
java.util.Collection<E> 内の addAlljava.util.List<E> 内の addAll
public boolean addAll(int index,
java.util.Collection<? extends E> c)
java.util.List<E> 内の addAllpublic boolean removeAll(java.util.Collection<?> c)
java.util.Collection<E> 内の removeAlljava.util.List<E> 内の removeAllpublic boolean retainAll(java.util.Collection<?> c)
java.util.Collection<E> 内の retainAlljava.util.List<E> 内の retainAllpublic void clear()
java.util.Collection<E> 内の clearjava.util.List<E> 内の clearpublic boolean equals(java.lang.Object o)
java.util.Collection<E> 内の equalsjava.util.List<E> 内の equalsjava.lang.Object 内の equalspublic int hashCode()
java.util.Collection<E> 内の hashCodejava.util.List<E> 内の hashCodejava.lang.Object 内の hashCodepublic 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> 内の addpublic E remove(int index)
java.util.List<E> 内の removepublic int indexOf(java.lang.Object o)
java.util.List<E> 内の indexOfpublic int lastIndexOf(java.lang.Object o)
java.util.List<E> 内の lastIndexOfpublic java.util.ListIterator<E> listIterator()
java.util.List<E> 内の listIteratorpublic 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
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||