Package com.luciad.util.collections
Class TLcdByteArrayList
- All Implemented Interfaces:
ILcdByteList
,ILcdCloneable
,Cloneable
,Iterable<Byte>
,Collection<Byte>
,List<Byte>
,SequencedCollection<Byte>
Array-based implementation of
ILcdByteList
.- Since:
- 9.0
-
Field Summary
Fields inherited from class java.util.AbstractList
modCount
-
Constructor Summary
ConstructorDescriptionCreates a new, emptyTLcdByteArrayList
.TLcdByteArrayList
(int aInitialCapacity) Creates a new, emptyTLcdByteArrayList
with the specified initial capacity. -
Method Summary
Modifier and TypeMethodDescriptionvoid
boolean
addAll
(int aIndex, byte[] aValues, int aOffset, int aLength) AddsaLength
integer values from the given array to this list, starting from the givenaOffset
boolean
addAll
(int index, Collection<? extends Byte> c) boolean
addAll
(Collection<? extends Byte> c) boolean
addByte
(byte aValue) Appends the specified value to the end of this list (optional operation).void
addByte
(int aIndex, byte aValue) Inserts the specified value at the specified position in this list (optional operation).int
binarySearch
(byte aKey) Performs a binary search on this list.void
clear()
clone()
Creates and returns a copy of this object.boolean
boolean
containsByte
(byte 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) byte
getByte
(int aIndex) Returns the value at the specified position in this list.int
int
indexOfByte
(byte 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
lastIndexOfByte
(byte 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
removeByte
(byte aValue) Removes the first occurrence of the specified value from this list, if it is present (optional operation).byte
removeByte
(int aIndex) Removes the value at the specified position in this list (optional operation).byte
setByte
(int aIndex, byte aValue) Replaces the value at the specified position in this list with the specified value (optional operation).int
size()
byte[]
Returns an array containing all of the values in this list in proper sequence (from first to last value).byte[]
toByteArray
(byte[] 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.ILcdByteList
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
-
TLcdByteArrayList
public TLcdByteArrayList()Creates a new, emptyTLcdByteArrayList
. -
TLcdByteArrayList
public TLcdByteArrayList(int aInitialCapacity) Creates a new, emptyTLcdByteArrayList
with the specified initial capacity.- Parameters:
aInitialCapacity
- the initial capacity of this list.
-
-
Method Details
-
size
public int size()- Specified by:
size
in interfaceCollection<Byte>
- Specified by:
size
in interfaceList<Byte>
- Specified by:
size
in classAbstractCollection<Byte>
-
get
-
set
-
add
-
remove
-
getByte
public byte getByte(int aIndex) Description copied from interface:ILcdByteList
Returns the value at the specified position in this list.- Specified by:
getByte
in interfaceILcdByteList
- Parameters:
aIndex
- index of the value to return- Returns:
- the value at the specified position in this list
-
setByte
public byte setByte(int aIndex, byte aValue) Description copied from interface:ILcdByteList
Replaces the value at the specified position in this list with the specified value (optional operation).- Specified by:
setByte
in interfaceILcdByteList
- Parameters:
aIndex
- index of the value to replaceaValue
- value to be stored at the specified position- Returns:
- the value previously at the specified position
-
addByte
public boolean addByte(byte aValue) Description copied from interface:ILcdByteList
Appends the specified value to the end of this list (optional operation).- Specified by:
addByte
in interfaceILcdByteList
- Parameters:
aValue
- value to be appended to this list- Returns:
true
-
addByte
public void addByte(int aIndex, byte aValue) Description copied from interface:ILcdByteList
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:
addByte
in interfaceILcdByteList
- Parameters:
aIndex
- index at which the specified value is to be insertedaValue
- value to be inserted
-
addAll
- Specified by:
addAll
in interfaceCollection<Byte>
- Specified by:
addAll
in interfaceList<Byte>
- Overrides:
addAll
in classAbstractCollection<Byte>
-
addAll
-
addAll
public boolean addAll(int aIndex, byte[] aValues, int aOffset, int aLength) Description copied from interface:ILcdByteList
AddsaLength
integer values from the given array to this list, starting from the givenaOffset
- Specified by:
addAll
in interfaceILcdByteList
- Parameters:
aIndex
- The position in this list where to start inserting the given integer values.aValues
- The array containing the integer values to add to this listaOffset
- The offset inaValues
from where to start copying the integer valuesaLength
- The number of integer values to copy fromaValues
to this list.- Returns:
- Whether this list was modified as a result of this call.
-
removeByte
public boolean removeByte(byte aValue) Description copied from interface:ILcdByteList
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:
removeByte
in interfaceILcdByteList
- Parameters:
aValue
- value to be removed from this list, if present- Returns:
true
if this list contained the specified value
-
removeByte
public byte removeByte(int aIndex) Description copied from interface:ILcdByteList
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:
removeByte
in interfaceILcdByteList
- Parameters:
aIndex
- the index of the value to be removed- Returns:
- the value previously at the specified position
-
toByteArray
public byte[] toByteArray()Description copied from interface:ILcdByteList
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:
toByteArray
in interfaceILcdByteList
- Returns:
- an array containing all of the values in this list in proper sequence
-
toByteArray
public byte[] toByteArray(byte[] anArray) Description copied from interface:ILcdByteList
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:
toByteArray
in interfaceILcdByteList
- 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<Byte>
- Specified by:
clear
in interfaceList<Byte>
- Overrides:
clear
in classAbstractList<Byte>
-
binarySearch
public int binarySearch(byte 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:ILcdByteList
Creates and returns a copy of this object.- Specified by:
clone
in interfaceILcdByteList
- Specified by:
clone
in interfaceILcdCloneable
- 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
-
indexOfByte
public int indexOfByte(byte aValue) Description copied from interface:ILcdByteList
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:
indexOfByte
in interfaceILcdByteList
- 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<Byte>
- Overrides:
lastIndexOf
in classAbstractList<Byte>
-
lastIndexOfByte
public int lastIndexOfByte(byte aValue) Description copied from interface:ILcdByteList
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:
lastIndexOfByte
in interfaceILcdByteList
- 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
-
containsByte
public boolean containsByte(byte aValue) Description copied from interface:ILcdByteList
Returnstrue
if this list contains the specified value.- Specified by:
containsByte
in interfaceILcdByteList
- 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<Byte>
- Specified by:
contains
in interfaceList<Byte>
- Overrides:
contains
in classAbstractCollection<Byte>
-