Package com.luciad.util.collections
Class TLcdDoubleArrayList
- All Implemented Interfaces:
ILcdDoubleList
,ILcdCloneable
,Cloneable
,Iterable<Double>
,Collection<Double>
,List<Double>
,SequencedCollection<Double>
- Direct Known Subclasses:
TLcdOWSPosition
Array-based implementation of
ILcdDoubleList
.- Since:
- 9.0
-
Field Summary
Fields inherited from class java.util.AbstractList
modCount
-
Constructor Summary
ConstructorDescriptionCreates a new, emptyTLcdDoubleArrayList
.TLcdDoubleArrayList
(int aInitialCapacity) Creates a new, emptyTLcdDoubleArrayList
with the specified initial capacity. -
Method Summary
Modifier and TypeMethodDescriptionvoid
boolean
addAll
(int aIndex, double[] aValues, int aOffset, int aLength) AddsaLength
boolean values from the given array to this list, starting from the givenaOffset
boolean
addAll
(int index, Collection<? extends Double> c) boolean
addAll
(Collection<? extends Double> c) boolean
addDouble
(double aValue) Appends the specified value to the end of this list (optional operation).void
addDouble
(int aIndex, double aValue) Inserts the specified value at the specified position in this list (optional operation).int
binarySearch
(double aKey) Performs a binary search on this list.void
clear()
clone()
Creates and returns a copy of this object.boolean
boolean
containsDouble
(double aValue) Returnstrue
if this list contains the specified value.void
ensureCapacity
(int minCapacity) Increases the capacity of this list to the specified capacity.get
(int index) double
getDouble
(int aIndex) Returns the value at the specified position in this list.int
int
indexOfDouble
(double aValue) Returns the index of the first occurrence of the specified value in this list, or -1 if this list does not contain the value.int
lastIndexOf
(Object aO) int
lastIndexOfDouble
(double aValue) Returns the index of the last occurrence of the specified value in this list, or -1 if this list does not contain the value.remove
(int index) boolean
removeDouble
(double aValue) Removes the first occurrence of the specified value from this list, if it is present (optional operation).double
removeDouble
(int aIndex) Removes the value at the specified position in this list (optional operation).double
setDouble
(int aIndex, double aValue) Replaces the value at the specified position in this list with the specified value (optional operation).int
size()
double[]
Returns an array containing all of the values in this list in proper sequence (from first to last value).double[]
toDoubleArray
(double[] anArray) Returns an array containing all of the values in this list in proper sequence (from first to last value); If the list fits in the specified array, t is returned therein.void
Trims the internal data array of this list to match the size of this list.Methods inherited from class java.util.AbstractList
add, equals, hashCode, iterator, listIterator, listIterator, removeRange, subList
Methods inherited from class java.util.AbstractCollection
containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray, toString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Collection
parallelStream, removeIf, stream, toArray
Methods inherited from interface com.luciad.util.collections.ILcdDoubleList
addAll, addAll, addAll
Methods inherited from interface java.util.List
add, addFirst, addLast, containsAll, equals, getFirst, getLast, hashCode, isEmpty, iterator, listIterator, listIterator, remove, removeAll, removeFirst, removeLast, replaceAll, retainAll, reversed, sort, spliterator, subList, toArray, toArray
-
Constructor Details
-
TLcdDoubleArrayList
public TLcdDoubleArrayList()Creates a new, emptyTLcdDoubleArrayList
. -
TLcdDoubleArrayList
public TLcdDoubleArrayList(int aInitialCapacity) Creates a new, emptyTLcdDoubleArrayList
with the specified initial capacity.- Parameters:
aInitialCapacity
- the initial capacity of this list.
-
-
Method Details
-
size
public int size()- Specified by:
size
in interfaceCollection<Double>
- Specified by:
size
in interfaceList<Double>
- Specified by:
size
in classAbstractCollection<Double>
-
get
-
set
-
add
-
addAll
- Specified by:
addAll
in interfaceCollection<Double>
- Specified by:
addAll
in interfaceList<Double>
- Overrides:
addAll
in classAbstractCollection<Double>
-
addAll
-
addAll
public boolean addAll(int aIndex, double[] aValues, int aOffset, int aLength) Description copied from interface:ILcdDoubleList
AddsaLength
boolean values from the given array to this list, starting from the givenaOffset
- Specified by:
addAll
in interfaceILcdDoubleList
- Parameters:
aIndex
- The position in this list where to start inserting the given boolean values.aValues
- The array containing the boolean values to add to this listaOffset
- The offset inaValues
from where to start copying the boolean valuesaLength
- The number of boolean values to copy fromaValues
to this list.- Returns:
- Whether this list was modified as a result of this call.
-
remove
-
getDouble
public double getDouble(int aIndex) Description copied from interface:ILcdDoubleList
Returns the value at the specified position in this list.- Specified by:
getDouble
in interfaceILcdDoubleList
- Parameters:
aIndex
- index of the value to return- Returns:
- the value at the specified position in this list
-
setDouble
public double setDouble(int aIndex, double aValue) Description copied from interface:ILcdDoubleList
Replaces the value at the specified position in this list with the specified value (optional operation).- Specified by:
setDouble
in interfaceILcdDoubleList
- Parameters:
aIndex
- index of the value to replaceaValue
- value to be stored at the specified position- Returns:
- the value previously at the specified position
-
addDouble
public boolean addDouble(double aValue) Description copied from interface:ILcdDoubleList
Appends the specified value to the end of this list (optional operation).- Specified by:
addDouble
in interfaceILcdDoubleList
- Parameters:
aValue
- value to be appended to this list- Returns:
true
-
addDouble
public void addDouble(int aIndex, double aValue) Description copied from interface:ILcdDoubleList
Inserts the specified value at the specified position in this list (optional operation). Shifts the value currently at that position (if any) and any subsequent values to the right (adds one to their indices).- Specified by:
addDouble
in interfaceILcdDoubleList
- Parameters:
aIndex
- index at which the specified value is to be insertedaValue
- value to be inserted
-
removeDouble
public boolean removeDouble(double aValue) Description copied from interface:ILcdDoubleList
Removes the first occurrence of the specified value from this list, if it is present (optional operation). If this list does not contain the value, it is unchanged. Returnstrue
if this list contained the specified value (or equivalently, if this list changed as a result of the call).- Specified by:
removeDouble
in interfaceILcdDoubleList
- Parameters:
aValue
- value to be removed from this list, if present- Returns:
true
if this list contained the specified value
-
removeDouble
public double removeDouble(int aIndex) Description copied from interface:ILcdDoubleList
Removes the value at the specified position in this list (optional operation). Shifts any subsequent values to the left (subtracts one from their indices). Returns the value that was removed from the list.- Specified by:
removeDouble
in interfaceILcdDoubleList
- Parameters:
aIndex
- the index of the value to be removed- Returns:
- the value previously at the specified position
-
toDoubleArray
public double[] toDoubleArray()Description copied from interface:ILcdDoubleList
Returns an array containing all of the values in this list in proper sequence (from first to last value). The returned array will be "safe" in that no references to it are maintained by this list. (In other words, this method must allocate a new array even if this list is backed by an array). The caller is thus free to modify the returned array.- Specified by:
toDoubleArray
in interfaceILcdDoubleList
- Returns:
- an array containing all of the values in this list in proper sequence
-
toDoubleArray
public double[] toDoubleArray(double[] anArray) Description copied from interface:ILcdDoubleList
Returns an array containing all of the values in this list in proper sequence (from first to last value); If the list fits in the specified array, t is returned therein. Otherwise, a new array is allocated with the size of this list. If the list fits in the specified array with room to spare (i.e., the array has more values than the list), the value in the array immediately following the end of the list is set to 0. (This is useful in determining the length of the list only if the caller knows that the list does not contain any 0 values.)- Specified by:
toDoubleArray
in interfaceILcdDoubleList
- Parameters:
anArray
- the array into which the values of this list are to be stored, if it is big enough; otherwise, a new array is allocated for this purpose.- Returns:
- an array containing the values of this list
-
clear
public void clear()- Specified by:
clear
in interfaceCollection<Double>
- Specified by:
clear
in interfaceList<Double>
- Overrides:
clear
in classAbstractList<Double>
-
binarySearch
public int binarySearch(double aKey) Performs a binary search on this list. It behaves exactly likeCollections.binarySearch(List, Object)
. The list must be sorted into ascending order according to the natural ordering of its elements (as by theCollections.sort(List)
method) prior to making this call. If it is not sorted, the results are undefined. If the list contains multiple elements equal to the specified object, there is no guarantee which one will be found.- Parameters:
aKey
- the value to search- Returns:
- the index as defined on
Collections.binarySearch(List, Object)
-
clone
Description copied from interface:ILcdDoubleList
Creates and returns a copy of this object.- Specified by:
clone
in interfaceILcdCloneable
- Specified by:
clone
in interfaceILcdDoubleList
- Overrides:
clone
in classObject
- Returns:
- a copy of this object.
- See Also:
-
ensureCapacity
public void ensureCapacity(int minCapacity) Increases the capacity of this list to the specified capacity. This method has no effect if the specified capacity is smaller than the current capacity.- Parameters:
minCapacity
- the new capacity for this list.
-
trimToSize
public void trimToSize()Trims the internal data array of this list to match the size of this list. -
indexOf
-
indexOfDouble
public int indexOfDouble(double aValue) Description copied from interface:ILcdDoubleList
Returns the index of the first occurrence of the specified value in this list, or -1 if this list does not contain the value.- Specified by:
indexOfDouble
in interfaceILcdDoubleList
- Parameters:
aValue
- value to search for- Returns:
- the index of the first occurrence of the specified value in this list, or -1 if this list does not contain the value
-
lastIndexOf
- Specified by:
lastIndexOf
in interfaceList<Double>
- Overrides:
lastIndexOf
in classAbstractList<Double>
-
lastIndexOfDouble
public int lastIndexOfDouble(double aValue) Description copied from interface:ILcdDoubleList
Returns the index of the last occurrence of the specified value in this list, or -1 if this list does not contain the value.- Specified by:
lastIndexOfDouble
in interfaceILcdDoubleList
- Parameters:
aValue
- value to search for- Returns:
- the index of the last occurrence of the specified value in this list, or -1 if this list does not contain the value
-
containsDouble
public boolean containsDouble(double aValue) Description copied from interface:ILcdDoubleList
Returnstrue
if this list contains the specified value.- Specified by:
containsDouble
in interfaceILcdDoubleList
- Parameters:
aValue
- value whose presence in this list is to be tested- Returns:
true
if this list contains the specified value
-
contains
- Specified by:
contains
in interfaceCollection<Double>
- Specified by:
contains
in interfaceList<Double>
- Overrides:
contains
in classAbstractCollection<Double>
-