public class TIntArrayList extends java.lang.Object implements TIntList, java.io.Externalizable
| Modifier and Type | Field and Description |
|---|---|
protected int[] |
_data
the data of the list
|
protected int |
_pos
the index after the last entry in the list
|
protected static int |
DEFAULT_CAPACITY
the default capacity for new lists
|
protected int |
no_entry_value
the int value that represents null
|
| Modifier | Constructor and Description |
|---|---|
|
TIntArrayList()
Creates a new
TIntArrayList instance with the
default capacity. |
|
TIntArrayList(int capacity)
Creates a new
TIntArrayList instance with the
specified capacity. |
|
TIntArrayList(int[] values)
Creates a new
TIntArrayList instance whose
capacity is the length of values array and whose
initial contents are the specified values. |
protected |
TIntArrayList(int[] values,
int no_entry_value,
boolean wrap) |
|
TIntArrayList(int capacity,
int no_entry_value)
Creates a new
TIntArrayList instance with the
specified capacity. |
|
TIntArrayList(TIntCollection collection)
Creates a new
TIntArrayList instance that contains
a copy of the collection passed to us. |
| Modifier and Type | Method and Description |
|---|---|
boolean |
add(int val)
Adds val to the end of the list, growing as needed.
|
void |
add(int[] vals)
Adds the values in the array vals to the end of the
list, in order.
|
void |
add(int[] vals,
int offset,
int length)
Adds a subset of the values in the array vals to the
end of the list, in order.
|
boolean |
addAll(java.util.Collection<? extends java.lang.Integer> collection)
Adds all of the elements in collection to the collection.
|
boolean |
addAll(int[] array)
Adds all of the elements in the array to the collection.
|
boolean |
addAll(TIntCollection collection)
Adds all of the elements in the TIntCollection to the collection.
|
int |
binarySearch(int value)
Performs a binary search for value in the entire list.
|
int |
binarySearch(int value,
int fromIndex,
int toIndex)
Performs a binary search for value in the specified
range.
|
void |
clear()
Flushes the internal state of the list, resetting the capacity
to the default.
|
void |
clear(int capacity)
Flushes the internal state of the list, setting the capacity of the empty list to
capacity.
|
boolean |
contains(int value)
Searches the list for value
|
boolean |
containsAll(java.util.Collection<?> collection)
Tests the collection to determine if all of the elements in
collection are present.
|
boolean |
containsAll(int[] array)
Tests the collection to determine if all of the elements in
array are present.
|
boolean |
containsAll(TIntCollection collection)
Tests the collection to determine if all of the elements in
TIntCollection are present.
|
void |
ensureCapacity(int capacity)
Grow the internal array as needed to accommodate the specified number of elements.
|
boolean |
equals(java.lang.Object other)
Compares the specified object with this collection for equality.
|
void |
fill(int val)
Fills every slot in the list with the specified value.
|
void |
fill(int fromIndex,
int toIndex,
int val)
Fills a range in the list with the specified value.
|
boolean |
forEach(TIntProcedure procedure)
Applies the procedure to each value in the list in ascending
(front to back) order.
|
boolean |
forEachDescending(TIntProcedure procedure)
Applies the procedure to each value in the list in descending
(back to front) order.
|
int |
get(int offset)
Returns the value at the specified offset.
|
int |
getNoEntryValue()
Returns the value that is used to represent null.
|
int |
getQuick(int offset)
Returns the value at the specified offset without doing any bounds checking.
|
TIntList |
grep(TIntProcedure condition)
Searches the list for values satisfying condition in
the manner of the *nix grep utility.
|
int |
hashCode()
Returns the hash code value for this collection.
|
int |
indexOf(int value)
Searches the list front to back for the index of
value.
|
int |
indexOf(int offset,
int value)
Searches the list front to back for the index of
value, starting at offset.
|
void |
insert(int offset,
int value)
Inserts value into the list at offset.
|
void |
insert(int offset,
int[] values)
Inserts the array of values into the list at
offset.
|
void |
insert(int offset,
int[] values,
int valOffset,
int len)
Inserts a slice of the array of values into the list
at offset.
|
TIntList |
inverseGrep(TIntProcedure condition)
Searches the list for values which do not satisfy
condition.
|
boolean |
isEmpty()
Tests whether this list contains any values.
|
TIntIterator |
iterator()
Creates an iterator over the values of the collection.
|
int |
lastIndexOf(int value)
Searches the list back to front for the last index of
value.
|
int |
lastIndexOf(int offset,
int value)
Searches the list back to front for the last index of
value, starting at offset.
|
int |
max()
Finds the maximum value in the list.
|
int |
min()
Finds the minimum value in the list.
|
void |
readExternal(java.io.ObjectInput in) |
boolean |
remove(int value)
Removes value from the list.
|
void |
remove(int offset,
int length)
Removes length values from the list, starting at
offset
|
boolean |
removeAll(java.util.Collection<?> collection)
Removes all of the elements in collection from the collection.
|
boolean |
removeAll(int[] array)
Removes all of the elements in array from the collection.
|
boolean |
removeAll(TIntCollection collection)
Removes all of the elements in TIntCollection from the collection.
|
int |
removeAt(int offset)
Removes value at a given offset from the list.
|
int |
replace(int offset,
int val)
Sets the value at the specified offset and returns the
previously stored value.
|
void |
reset()
Sets the size of the list to 0, but does not change its capacity.
|
void |
resetQuick()
Sets the size of the list to 0, but does not change its capacity.
|
boolean |
retainAll(java.util.Collection<?> collection)
Removes any values in the collection which are not contained in
collection.
|
boolean |
retainAll(int[] array)
Removes any values in the collection which are not contained in
array.
|
boolean |
retainAll(TIntCollection collection)
Removes any values in the collection which are not contained in
TIntCollection.
|
void |
reverse()
Reverse the order of the elements in the list.
|
void |
reverse(int from,
int to)
Reverse the order of the elements in the range of the list.
|
int |
set(int offset,
int val)
Sets the value at the specified offset.
|
void |
set(int offset,
int[] values)
Replace the values in the list starting at offset with
the contents of the values array.
|
void |
set(int offset,
int[] values,
int valOffset,
int length)
Replace the values in the list starting at offset with
length values from the values array, starting
at valOffset.
|
void |
setQuick(int offset,
int val)
Sets the value at the specified offset without doing any bounds checking.
|
void |
shuffle(java.util.Random rand)
Shuffle the elements of the list using the specified random
number generator.
|
int |
size()
Returns the number of values in the list.
|
void |
sort()
Sort the values in the list (ascending) using the Sun quicksort
implementation.
|
void |
sort(int fromIndex,
int toIndex)
Sort a slice of the list (ascending) using the Sun quicksort
implementation.
|
TIntList |
subList(int begin,
int end)
Returns a sublist of this list.
|
int |
sum()
Calculates the sum of all the values in the list.
|
int[] |
toArray()
Copies the contents of the list into a native array.
|
int[] |
toArray(int[] dest)
Copies a slice of the list into a native array.
|
int[] |
toArray(int[] dest,
int offset,
int len)
Copies a slice of the list into a native array.
|
int[] |
toArray(int[] dest,
int source_pos,
int dest_pos,
int len)
Copies a slice of the list into a native array.
|
int[] |
toArray(int offset,
int len)
Copies a slice of the list into a native array.
|
java.lang.String |
toString() |
void |
transformValues(TIntFunction function)
Transform each value in the list using the specified function.
|
void |
trimToSize()
Sheds any excess capacity above and beyond the current size of the list.
|
static TIntArrayList |
wrap(int[] values)
Returns a primitive List implementation that wraps around the given primitive array.
|
static TIntArrayList |
wrap(int[] values,
int no_entry_value)
Returns a primitive List implementation that wraps around the given primitive array.
|
void |
writeExternal(java.io.ObjectOutput out) |
protected int[] _data
protected int _pos
protected static final int DEFAULT_CAPACITY
protected int no_entry_value
public TIntArrayList()
TIntArrayList instance with the
default capacity.public TIntArrayList(int capacity)
TIntArrayList instance with the
specified capacity.capacity - an int valuepublic TIntArrayList(int capacity,
int no_entry_value)
TIntArrayList instance with the
specified capacity.capacity - an int valueno_entry_value - an int value that represents null.public TIntArrayList(TIntCollection collection)
TIntArrayList instance that contains
a copy of the collection passed to us.collection - the collection to copypublic TIntArrayList(int[] values)
TIntArrayList instance whose
capacity is the length of values array and whose
initial contents are the specified values.
A defensive copy of the given values is held by the new instance.
values - an int[] valueprotected TIntArrayList(int[] values,
int no_entry_value,
boolean wrap)
public static TIntArrayList wrap(int[] values)
values - public static TIntArrayList wrap(int[] values, int no_entry_value)
values - no_entry_value - public int getNoEntryValue()
getNoEntryValue in interface TIntListgetNoEntryValue in interface TIntCollectionpublic void ensureCapacity(int capacity)
public int size()
size in interface TIntListsize in interface TIntCollectionpublic boolean isEmpty()
isEmpty in interface TIntListisEmpty in interface TIntCollectionpublic void trimToSize()
public boolean add(int val)
add in interface TIntListadd in interface TIntCollectionval - an int valuepublic void add(int[] vals)
public void add(int[] vals,
int offset,
int length)
public void insert(int offset,
int value)
public void insert(int offset,
int[] values)
public void insert(int offset,
int[] values,
int valOffset,
int len)
public int get(int offset)
public int getQuick(int offset)
public int set(int offset,
int val)
public int replace(int offset,
int val)
public void set(int offset,
int[] values)
public void set(int offset,
int[] values,
int valOffset,
int length)
public void setQuick(int offset,
int val)
public void clear()
clear in interface TIntListclear in interface TIntCollectionpublic void clear(int capacity)
public void reset()
clear() method if you want to recycle a
list without allocating new backing arrays.public void resetQuick()
clear() method if you want to recycle a
list without allocating new backing arrays. This method differs from
reset() in that it does not clear the old values in the backing array.
Thus, it is possible for getQuick to return stale data if this method is used and
the caller is careless about bounds checking.public boolean remove(int value)
remove in interface TIntListremove in interface TIntCollectionvalue - an int valuepublic int removeAt(int offset)
public void remove(int offset,
int length)
public TIntIterator iterator()
iterator in interface TIntCollectionTIntIterator valuepublic boolean containsAll(java.util.Collection<?> collection)
containsAll in interface TIntCollectioncollection - a Collection valuepublic boolean containsAll(TIntCollection collection)
containsAll in interface TIntCollectioncollection - a TIntCollection valuepublic boolean containsAll(int[] array)
containsAll in interface TIntCollectionarray - as array of int primitives.public boolean addAll(java.util.Collection<? extends java.lang.Integer> collection)
addAll in interface TIntCollectioncollection - a Collection valuepublic boolean addAll(TIntCollection collection)
addAll in interface TIntCollectioncollection - a TIntCollection valuepublic boolean addAll(int[] array)
addAll in interface TIntCollectionarray - a array of int primitives.public boolean retainAll(java.util.Collection<?> collection)
retainAll in interface TIntCollectioncollection - a Collection valuepublic boolean retainAll(TIntCollection collection)
retainAll in interface TIntCollectioncollection - a TIntCollection valuepublic boolean retainAll(int[] array)
retainAll in interface TIntCollectionarray - an array of int primitives.public boolean removeAll(java.util.Collection<?> collection)
removeAll in interface TIntCollectioncollection - a Collection valuepublic boolean removeAll(TIntCollection collection)
removeAll in interface TIntCollectioncollection - a TIntCollection valuepublic boolean removeAll(int[] array)
removeAll in interface TIntCollectionarray - an array of int primitives.public void transformValues(TIntFunction function)
transformValues in interface TIntListfunction - a TIntFunction valuepublic void reverse()
public void reverse(int from,
int to)
public void shuffle(java.util.Random rand)
public TIntList subList(int begin, int end)
public int[] toArray()
toArray in interface TIntListtoArray in interface TIntCollectionint[] valuepublic int[] toArray(int offset,
int len)
public int[] toArray(int[] dest)
If the list fits in the specified array with room to spare (i.e.,
the array has more elements than the list), the element in the array
immediately following the end of the list is set to
TIntList.getNoEntryValue().
(This is useful in determining the length of the list only if
the caller knows that the list does not contain any "null" elements.)
NOTE: Trove does not allocate a new array if the array passed in is not large enough to hold all of the data elements. It will instead fill the array passed in.
toArray in interface TIntListtoArray in interface TIntCollectiondest - the array to copy into.public int[] toArray(int[] dest,
int offset,
int len)
public int[] toArray(int[] dest,
int source_pos,
int dest_pos,
int len)
public boolean equals(java.lang.Object other)
equals in interface TIntCollectionequals in class java.lang.Objectother - object to be compared for equality with this collectionpublic int hashCode()
Object.hashCode().hashCode in interface TIntCollectionhashCode in class java.lang.ObjectObject.equals(Object),
Collection.equals(Object)public boolean forEach(TIntProcedure procedure)
forEach in interface TIntListforEach in interface TIntCollectionprocedure - a TIntProcedure valuepublic boolean forEachDescending(TIntProcedure procedure)
forEachDescending in interface TIntListprocedure - a TIntProcedure valuepublic void sort()
public void sort(int fromIndex,
int toIndex)
public void fill(int val)
public void fill(int fromIndex,
int toIndex,
int val)
public int binarySearch(int value)
binarySearch in interface TIntListvalue - the value to search forpublic int binarySearch(int value,
int fromIndex,
int toIndex)
binarySearch in interface TIntListvalue - the value to search forfromIndex - the lower boundary of the range (inclusive)toIndex - the upper boundary of the range (exclusive)public int indexOf(int value)
indexOf in interface TIntListvalue - an int valuefor faster searches on sorted listspublic int indexOf(int offset,
int value)
indexOf in interface TIntListoffset - the offset at which to start the linear search
(inclusive)value - an int valuefor faster searches on sorted listspublic int lastIndexOf(int value)
lastIndexOf in interface TIntListvalue - an int valuefor faster searches on sorted listspublic int lastIndexOf(int offset,
int value)
lastIndexOf in interface TIntListoffset - the offset at which to start the linear search
(exclusive)value - an int valuefor faster searches on sorted listspublic boolean contains(int value)
contains in interface TIntListcontains in interface TIntCollectionvalue - an int valuepublic TIntList grep(TIntProcedure condition)
public TIntList inverseGrep(TIntProcedure condition)
grep -v.inverseGrep in interface TIntListcondition - a condition to apply to each element in the listpublic int max()
public int min()
public int sum()
public java.lang.String toString()
toString in class java.lang.Objectpublic void writeExternal(java.io.ObjectOutput out)
throws java.io.IOException
writeExternal in interface java.io.Externalizablejava.io.IOExceptionpublic void readExternal(java.io.ObjectInput in)
throws java.io.IOException,
java.lang.ClassNotFoundException
readExternal in interface java.io.Externalizablejava.io.IOExceptionjava.lang.ClassNotFoundException