|
||||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.util.AbstractCollection<E>
java.util.AbstractList<E>
java.util.ArrayList
org.logicalcobwebs.proxool.util.FastArrayList
public class FastArrayList
A customized implementation of java.util.ArrayList designed
to operate in a multithreaded environment where the large majority of
method calls are read-only, instead of structural changes. When operating
in "fast" mode, read calls are non-synchronized and write calls perform the
following steps:
When first created, objects of this class default to "slow" mode, where
all accesses of any type are synchronized but no cloning takes place. This
is appropriate for initially populating the collection, followed by a switch
to "fast" mode (by calling setFast(true)) after initialization
is complete.
NOTE: If you are creating and accessing an
ArrayList only within a single thread, you should use
java.util.ArrayList directly (with no synchronization), for
maximum performance.
NOTE: This class is not cross-platform. Using it may cause unexpected failures on some architectures. It suffers from the same problems as the double-checked locking idiom. In particular, the instruction that clones the internal collection and the instruction that sets the internal reference to the clone can be executed or perceived out-of-order. This means that any read operation might fail unexpectedly, as it may be reading the state of the internal collection before the internal collection is fully formed. For more information on the double-checked locking idiom, see the Double-Checked Locking Idiom Is Broken Declartion.
| 字段摘要 |
|---|
| 从类 java.util.AbstractList 继承的字段 |
|---|
modCount |
| 构造方法摘要 | |
|---|---|
FastArrayList()
Construct a an empty list. |
|
FastArrayList(Collection collection)
Construct a list containing the elements of the specified collection, in the order they are returned by the collection's iterator. |
|
FastArrayList(int capacity)
Construct an empty list with the specified capacity. |
|
| 方法摘要 | |
|---|---|
void |
add(int index,
Object element)
Insert the specified element at the specified position in this list, and shift all remaining elements up one position. |
boolean |
add(Object element)
Appends the specified element to the end of this list. |
boolean |
addAll(Collection collection)
Append all of the elements in the specified Collection to the end of this list, in the order that they are returned by the specified Collection's Iterator. |
boolean |
addAll(int index,
Collection collection)
Insert all of the elements in the specified Collection at the specified position in this list, and shift any previous elements upwards as needed. |
void |
clear()
Remove all of the elements from this list. |
Object |
clone()
Return a shallow copy of this FastArrayList instance. |
boolean |
contains(Object element)
Return true if this list contains the specified element. |
boolean |
containsAll(Collection collection)
Return true if this list contains all of the elements
in the specified Collection. |
void |
ensureCapacity(int capacity)
Increase the capacity of this ArrayList instance, if
necessary, to ensure that it can hold at least the number of elements
specified by the minimum capacity argument. |
boolean |
equals(Object o)
Compare the specified object with this list for equality. |
Object |
get(int index)
Return the element at the specified position in the list. |
boolean |
getFast()
Returns true if this list is operating in fast mode. |
int |
hashCode()
Return the hash code value for this list. |
int |
indexOf(Object element)
Search for the first occurrence of the given argument, testing for equality using the equals() method, and return
the corresponding index, or -1 if the object is not found. |
boolean |
isEmpty()
Test if this list has no elements. |
Iterator |
iterator()
Return an iterator over the elements in this list in proper sequence. |
int |
lastIndexOf(Object element)
Search for the last occurrence of the given argument, testing for equality using the equals() method, and return
the corresponding index, or -1 if the object is not found. |
ListIterator |
listIterator()
Return an iterator of the elements of this list, in proper sequence. |
ListIterator |
listIterator(int index)
Return an iterator of the elements of this list, in proper sequence, starting at the specified position. |
Object |
remove(int index)
Remove the element at the specified position in the list, and shift any subsequent elements down one position. |
boolean |
remove(Object element)
Remove the first occurrence of the specified element from the list, and shift any subsequent elements down one position. |
boolean |
removeAll(Collection collection)
Remove from this collection all of its elements that are contained in the specified collection. |
boolean |
retainAll(Collection collection)
Remove from this collection all of its elements except those that are contained in the specified collection. |
Object |
set(int index,
Object element)
Replace the element at the specified position in this list with the specified element. |
void |
setFast(boolean fast)
Sets whether this list will operate in fast mode. |
int |
size()
Return the number of elements in this list. |
List |
subList(int fromIndex,
int toIndex)
Return a view of the portion of this list between fromIndex (inclusive) and toIndex (exclusive). |
Object[] |
toArray()
Return an array containing all of the elements in this list in the correct order. |
Object[] |
toArray(Object[] array)
Return an array containing all of the elements in this list in the correct order. |
String |
toString()
Return a String representation of this object. |
void |
trimToSize()
Trim the capacity of this ArrayList instance to be the
list's current size. |
| 从类 java.util.ArrayList 继承的方法 |
|---|
removeRange |
| 从类 java.lang.Object 继承的方法 |
|---|
finalize, getClass, notify, notifyAll, wait, wait, wait |
| 构造方法详细信息 |
|---|
public FastArrayList()
public FastArrayList(int capacity)
capacity - The initial capacity of the empty listpublic FastArrayList(Collection collection)
collection - The collection whose elements initialize the contents
of this list| 方法详细信息 |
|---|
public boolean getFast()
public void setFast(boolean fast)
fast - true if the list should operate in fast modepublic boolean add(Object element)
Collection 中的 addList 中的 addArrayList 中的 addelement - The element to be appended
public void add(int index,
Object element)
List 中的 addArrayList 中的 addindex - Index at which to insert this elementelement - The element to be inserted
IndexOutOfBoundsException - if the index is out of rangepublic boolean addAll(Collection collection)
Collection 中的 addAllList 中的 addAllArrayList 中的 addAllcollection - The collection to be appended
public boolean addAll(int index,
Collection collection)
List 中的 addAllArrayList 中的 addAllindex - Index at which insertion takes placecollection - The collection to be added
IndexOutOfBoundsException - if the index is out of rangepublic void clear()
Collection 中的 clearList 中的 clearArrayList 中的 clearUnsupportedOperationException - if clear()
is not supported by this listpublic Object clone()
FastArrayList instance.
The elements themselves are not copied.
ArrayList 中的 clonepublic boolean contains(Object element)
true if this list contains the specified element.
Collection 中的 containsList 中的 containsArrayList 中的 containselement - The element to test forpublic boolean containsAll(Collection collection)
true if this list contains all of the elements
in the specified Collection.
Collection 中的 containsAllList 中的 containsAllAbstractCollection 中的 containsAllcollection - Collection whose elements are to be checkedpublic void ensureCapacity(int capacity)
ArrayList instance, if
necessary, to ensure that it can hold at least the number of elements
specified by the minimum capacity argument.
ArrayList 中的 ensureCapacitycapacity - The new minimum capacitypublic boolean equals(Object o)
List.equals method.
Collection 中的 equalsList 中的 equalsAbstractList 中的 equalso - Object to be compared to this listpublic Object get(int index)
List 中的 getArrayList 中的 getindex - The index of the element to return
IndexOutOfBoundsException - if the index is out of rangepublic int hashCode()
List.hashCode method.
Collection 中的 hashCodeList 中的 hashCodeAbstractList 中的 hashCodepublic int indexOf(Object element)
equals() method, and return
the corresponding index, or -1 if the object is not found.
List 中的 indexOfArrayList 中的 indexOfelement - The element to search forpublic boolean isEmpty()
Collection 中的 isEmptyList 中的 isEmptyArrayList 中的 isEmptypublic Iterator iterator()
Iterable 中的 iteratorCollection 中的 iteratorList 中的 iteratorAbstractList 中的 iteratorpublic int lastIndexOf(Object element)
equals() method, and return
the corresponding index, or -1 if the object is not found.
List 中的 lastIndexOfArrayList 中的 lastIndexOfelement - The element to search forpublic ListIterator listIterator()
iterator().
List 中的 listIteratorAbstractList 中的 listIteratorpublic ListIterator listIterator(int index)
iterator().
List 中的 listIteratorAbstractList 中的 listIteratorindex - The starting position of the iterator to return
IndexOutOfBoundsException - if the index is out of rangepublic Object remove(int index)
List 中的 removeArrayList 中的 removeindex - Index of the element to be removed
IndexOutOfBoundsException - if the index is out of rangepublic boolean remove(Object element)
Collection 中的 removeList 中的 removeArrayList 中的 removeelement - Element to be removedpublic boolean removeAll(Collection collection)
Collection 中的 removeAllList 中的 removeAllAbstractCollection 中的 removeAllcollection - Collection containing elements to be removed
UnsupportedOperationException - if this optional operation
is not supported by this listpublic boolean retainAll(Collection collection)
Collection 中的 retainAllList 中的 retainAllAbstractCollection 中的 retainAllcollection - Collection containing elements to be retained
UnsupportedOperationException - if this optional operation
is not supported by this list
public Object set(int index,
Object element)
List 中的 setArrayList 中的 setindex - Index of the element to replaceelement - The new element to be stored
IndexOutOfBoundsException - if the index is out of rangepublic int size()
Collection 中的 sizeList 中的 sizeArrayList 中的 size
public List subList(int fromIndex,
int toIndex)
List 中的 subListAbstractList 中的 subListfromIndex - The starting index of the sublist viewtoIndex - The index after the end of the sublist view
IndexOutOfBoundsException - if an index is out of rangepublic Object[] toArray()
Collection 中的 toArrayList 中的 toArrayArrayList 中的 toArraypublic Object[] toArray(Object[] array)
Collection 中的 toArrayList 中的 toArrayArrayList 中的 toArrayarray - Array defining the element type of the returned list
ArrayStoreException - if the runtime type of array
is not a supertype of the runtime type of every element in this listpublic String toString()
AbstractCollection 中的 toStringpublic void trimToSize()
ArrayList instance to be the
list's current size. An application can use this operation to minimize
the storage of an ArrayList instance.
ArrayList 中的 trimToSize
|
||||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||