Class ByteLists.Singleton
- All Implemented Interfaces:
ByteCollection
,ByteIterable
,ByteList
,ByteStack
,Stack<Byte>
,Serializable
,Cloneable
,Comparable<List<? extends Byte>>
,Iterable<Byte>
,Collection<Byte>
,List<Byte>
,RandomAccess
,SequencedCollection<Byte>
- Enclosing class:
ByteLists
This class may be useful to implement your own in case you subclass a type-specific list.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class it.unimi.dsi.fastutil.bytes.AbstractByteList
AbstractByteList.ByteRandomAccessSubList, AbstractByteList.ByteSubList
-
Method Summary
Modifier and TypeMethodDescriptionboolean
addAll
(int i, ByteCollection c) Inserts all of the elements in the specified type-specific collection into this type-specific list at the specified position (optional operation).boolean
Inserts all of the elements in the specified type-specific list into this type-specific list at the specified position (optional operation).boolean
addAll
(int i, Collection<? extends Byte> c) Adds all of the elements in the specified collection to this list (optional operation).boolean
Adds all elements of the given type-specific collection to this collection.boolean
Appends all of the elements in the specified type-specific list to the end of this type-specific list (optional operation).boolean
addAll
(Collection<? extends Byte> c) void
addElements
(int index, byte[] a) Add (hopefully quickly) elements to this type-specific list.void
addElements
(int index, byte[] a, int offset, int length) Add (hopefully quickly) elements to this type-specific list.void
clear()
clone()
boolean
contains
(byte k) Returns true if this list contains the specified element.void
forEach
(ByteConsumer action) Performs the given action for each element of this type-specificIterable
until all elements have been processed or the action throws an exception.void
Deprecated.byte
getByte
(int i) Returns the element at the specified position in this list.void
getElements
(int from, byte[] a, int offset, int length) Copies (hopefully quickly) elements of this type-specific list into the given array.int
indexOf
(byte k) Returns the index of the first occurrence of the specified element in this list, or -1 if this list does not contain the element.Returns a widened primitive iterator on the elements of this collection.Returns widened primitive spliterator on the elements of this collection.iterator()
Returns a type-specific iterator on the elements of this collection.Returns a type-specific list iterator on the list.listIterator
(int i) Returns a type-specific list iterator on the list starting at a given index.boolean
rem
(byte k) Removes a single instance of the specified element from this collection, if it is present (optional operation).boolean
Remove from this collection all elements in the given type-specific collection.boolean
removeAll
(Collection<?> c) byte
removeByte
(int i) Removes the element at the specified position in this list (optional operation).void
removeElements
(int from, int to) Removes (hopefully quickly) elements of this type-specific list.boolean
removeIf
(BytePredicate filter) Remove from this collection all elements which satisfy the given predicate.boolean
Deprecated.void
replaceAll
(ByteUnaryOperator operator) Replaces each element of this list with the result of applying the operator to that element.void
replaceAll
(UnaryOperator<Byte> operator) Deprecated.boolean
Retains in this collection only elements from the given type-specific collection.boolean
retainAll
(Collection<?> c) void
setElements
(byte[] a) Set (hopefully quickly) elements to match the array given.void
setElements
(int index, byte[] a) Set (hopefully quickly) elements to match the array given.void
setElements
(int index, byte[] a, int offset, int length) Set (hopefully quickly) elements to match the array given.int
size()
void
size
(int size) Sets the size of this list.void
sort
(ByteComparator comparator) Sort a list using a type-specific comparator.void
sort
(Comparator<? super Byte> comparator) Deprecated.Returns a type-specific spliterator on the elements of this list.subList
(int from, int to) Returns a type-specific view of the portion of this list from the indexfrom
, inclusive, to the indexto
, exclusive.Object[]
toArray()
Deprecated.byte[]
Returns a primitive type array containing the items of this collection.void
unstableSort
(ByteComparator comparator) Sorts this list using a sort not assured to be stable.void
unstableSort
(Comparator<? super Byte> comparator) Deprecated.Methods inherited from class it.unimi.dsi.fastutil.bytes.AbstractByteList
add, add, compareTo, equals, hashCode, lastIndexOf, peekByte, popByte, push, set, toArray, topByte, toString
Methods inherited from class it.unimi.dsi.fastutil.bytes.AbstractByteCollection
add, contains, containsAll, containsAll, remove, toByteArray
Methods inherited from class java.util.AbstractCollection
isEmpty, toArray
Methods inherited from interface it.unimi.dsi.fastutil.bytes.ByteCollection
containsAll, intParallelStream, intStream, parallelStream, removeIf, stream, toByteArray
Methods inherited from interface it.unimi.dsi.fastutil.bytes.ByteIterable
forEach
Methods inherited from interface it.unimi.dsi.fastutil.bytes.ByteList
add, add, contains, get, indexOf, lastIndexOf, remove, remove, replaceAll, set
Methods inherited from interface java.util.Collection
toArray
Methods inherited from interface java.util.List
addFirst, addLast, containsAll, getFirst, getLast, isEmpty, removeFirst, removeLast, reversed, toArray
-
Method Details
-
getByte
public byte getByte(int i) Description copied from interface:ByteList
Returns the element at the specified position in this list. -
rem
public boolean rem(byte k) Description copied from class:AbstractByteList
Removes a single instance of the specified element from this collection, if it is present (optional operation).- Specified by:
rem
in interfaceByteCollection
- Overrides:
rem
in classAbstractByteList
- See Also:
-
removeByte
public byte removeByte(int i) Description copied from class:AbstractByteList
Removes the element at the specified position in this list (optional operation).- Specified by:
removeByte
in interfaceByteList
- Overrides:
removeByte
in classAbstractByteList
- See Also:
-
contains
public boolean contains(byte k) Description copied from class:AbstractByteList
Returns true if this list contains the specified element.- Specified by:
contains
in interfaceByteCollection
- Overrides:
contains
in classAbstractByteList
- See Also:
-
indexOf
public int indexOf(byte k) Description copied from interface:ByteList
Returns the index of the first occurrence of the specified element in this list, or -1 if this list does not contain the element.- Specified by:
indexOf
in interfaceByteList
- Overrides:
indexOf
in classAbstractByteList
- See Also:
-
toByteArray
public byte[] toByteArray()Description copied from interface:ByteCollection
Returns a primitive type array containing the items of this collection.- Specified by:
toByteArray
in interfaceByteCollection
- Overrides:
toByteArray
in classAbstractByteList
- Returns:
- a primitive type array containing the items of this collection.
- See Also:
-
listIterator
Description copied from class:AbstractByteList
Returns a type-specific list iterator on the list.- Specified by:
listIterator
in interfaceByteList
- Specified by:
listIterator
in interfaceList<Byte>
- Overrides:
listIterator
in classAbstractByteList
- See Also:
-
iterator
Description copied from class:AbstractByteList
Returns a type-specific iterator on the elements of this collection.- Specified by:
iterator
in interfaceByteCollection
- Specified by:
iterator
in interfaceByteIterable
- Specified by:
iterator
in interfaceByteList
- Specified by:
iterator
in interfaceCollection<Byte>
- Specified by:
iterator
in interfaceIterable<Byte>
- Specified by:
iterator
in interfaceList<Byte>
- Overrides:
iterator
in classAbstractByteList
- Returns:
- a type-specific iterator on the elements of this collection.
- See Also:
-
spliterator
Description copied from interface:ByteList
Returns a type-specific spliterator on the elements of this list.List spliterators must report at least
Spliterator.SIZED
andSpliterator.ORDERED
.See
List.spliterator()
for more documentation on the requirements of the returned spliterator.- Specified by:
spliterator
in interfaceByteCollection
- Specified by:
spliterator
in interfaceByteIterable
- Specified by:
spliterator
in interfaceByteList
- Specified by:
spliterator
in interfaceCollection<Byte>
- Specified by:
spliterator
in interfaceIterable<Byte>
- Specified by:
spliterator
in interfaceList<Byte>
- Returns:
- a type-specific spliterator on the elements of this collection.
-
listIterator
Description copied from class:AbstractByteList
Returns a type-specific list iterator on the list starting at a given index.- Specified by:
listIterator
in interfaceByteList
- Specified by:
listIterator
in interfaceList<Byte>
- Overrides:
listIterator
in classAbstractByteList
- See Also:
-
subList
Description copied from interface:ByteList
Returns a type-specific view of the portion of this list from the indexfrom
, inclusive, to the indexto
, exclusive. -
forEach
Deprecated.Description copied from interface:ByteIterable
- Specified by:
forEach
in interfaceByteIterable
- Specified by:
forEach
in interfaceIterable<Byte>
-
addAll
Description copied from class:AbstractByteList
Adds all of the elements in the specified collection to this list (optional operation).- Specified by:
addAll
in interfaceList<Byte>
- Overrides:
addAll
in classAbstractByteList
-
addAll
Description copied from class:AbstractByteList
- Specified by:
addAll
in interfaceCollection<Byte>
- Specified by:
addAll
in interfaceList<Byte>
- Overrides:
addAll
in classAbstractByteList
-
removeAll
Description copied from class:AbstractByteCollection
- Specified by:
removeAll
in interfaceCollection<Byte>
- Specified by:
removeAll
in interfaceList<Byte>
- Overrides:
removeAll
in classAbstractByteCollection
-
retainAll
Description copied from class:AbstractByteCollection
- Specified by:
retainAll
in interfaceCollection<Byte>
- Specified by:
retainAll
in interfaceList<Byte>
- Overrides:
retainAll
in classAbstractByteCollection
-
removeIf
Deprecated.Description copied from interface:ByteCollection
- Specified by:
removeIf
in interfaceByteCollection
- Specified by:
removeIf
in interfaceCollection<Byte>
-
replaceAll
Deprecated.Description copied from interface:ByteList
- Specified by:
replaceAll
in interfaceByteList
- Specified by:
replaceAll
in interfaceList<Byte>
-
replaceAll
Description copied from interface:ByteList
Replaces each element of this list with the result of applying the operator to that element.- Specified by:
replaceAll
in interfaceByteList
- Parameters:
operator
- the operator to apply to each element.- See Also:
-
forEach
Description copied from class:AbstractByteList
Performs the given action for each element of this type-specificIterable
until all elements have been processed or the action throws an exception.- Specified by:
forEach
in interfaceByteIterable
- Overrides:
forEach
in classAbstractByteList
- Parameters:
action
- the action to be performed for each element.- See Also:
-
addAll
Description copied from interface:ByteList
Appends all of the elements in the specified type-specific list to the end of this type-specific list (optional operation). -
addAll
Description copied from interface:ByteList
Inserts all of the elements in the specified type-specific list into this type-specific list at the specified position (optional operation). -
addAll
Description copied from interface:ByteList
Inserts all of the elements in the specified type-specific collection into this type-specific list at the specified position (optional operation).- Specified by:
addAll
in interfaceByteList
- Overrides:
addAll
in classAbstractByteList
- See Also:
-
addAll
Description copied from class:AbstractByteList
Adds all elements of the given type-specific collection to this collection.- Specified by:
addAll
in interfaceByteCollection
- Overrides:
addAll
in classAbstractByteList
- Parameters:
c
- a type-specific collection.- Returns:
true
if this collection changed as a result of the call.- See Also:
-
removeAll
Description copied from interface:ByteCollection
Remove from this collection all elements in the given type-specific collection.- Specified by:
removeAll
in interfaceByteCollection
- Overrides:
removeAll
in classAbstractByteCollection
- Parameters:
c
- a type-specific collection.- Returns:
true
if this collection changed as a result of the call.- See Also:
-
retainAll
Description copied from interface:ByteCollection
Retains in this collection only elements from the given type-specific collection.- Specified by:
retainAll
in interfaceByteCollection
- Overrides:
retainAll
in classAbstractByteCollection
- Parameters:
c
- a type-specific collection.- Returns:
true
if this collection changed as a result of the call.- See Also:
-
removeIf
Description copied from interface:ByteCollection
Remove from this collection all elements which satisfy the given predicate.- Specified by:
removeIf
in interfaceByteCollection
- Parameters:
filter
- a predicate which returnstrue
for elements to be removed.- Returns:
true
if any elements were removed.- See Also:
-
intIterator
Description copied from interface:ByteCollection
Returns a widened primitive iterator on the elements of this collection.This method is provided for the purpose of APIs that expect only the JDK's primitive iterators, of which there are only
int
,long
, anddouble
.- Specified by:
intIterator
in interfaceByteCollection
- Specified by:
intIterator
in interfaceByteIterable
- Returns:
- a widened primitive iterator on the elements of this collection.
-
intSpliterator
Description copied from interface:ByteCollection
Returns widened primitive spliterator on the elements of this collection.This method is provided for the purpose of APIs that expect only the JDK's primitive spliterators, of which there are only
int
,long
, anddouble
.- Specified by:
intSpliterator
in interfaceByteCollection
- Specified by:
intSpliterator
in interfaceByteIterable
- Returns:
- a widened primitive spliterator on the elements of this collection.
-
toArray
Deprecated.- Specified by:
toArray
in interfaceCollection<Byte>
- Specified by:
toArray
in interfaceList<Byte>
- Overrides:
toArray
in classAbstractCollection<Byte>
-
sort
Description copied from interface:ByteList
Sort a list using a type-specific comparator.Pass
null
to sort using natural ordering. -
unstableSort
Description copied from interface:ByteList
Sorts this list using a sort not assured to be stable.Pass
null
to sort using natural ordering.This differs from
List.sort(java.util.Comparator)
in that the results are not assured to be stable, but may be a bit faster.Unless a subclass specifies otherwise, the results of the method if the list is concurrently modified during the sort are unspecified.
- Specified by:
unstableSort
in interfaceByteList
-
sort
Deprecated.Description copied from interface:ByteList
-
unstableSort
Deprecated.Description copied from interface:ByteList
Sorts this list using a sort not assured to be stable.- Specified by:
unstableSort
in interfaceByteList
-
getElements
public void getElements(int from, byte[] a, int offset, int length) Description copied from class:AbstractByteList
Copies (hopefully quickly) elements of this type-specific list into the given array.This is a trivial iterator-based implementation. It is expected that implementations will override this method with a more optimized version.
- Specified by:
getElements
in interfaceByteList
- Overrides:
getElements
in classAbstractByteList
- Parameters:
from
- the start index (inclusive).a
- the destination array.offset
- the offset into the destination array where to store the first element copied.length
- the number of elements to be copied.
-
removeElements
public void removeElements(int from, int to) Description copied from class:AbstractByteList
Removes (hopefully quickly) elements of this type-specific list.This is a trivial iterator-based based implementation. It is expected that implementations will override this method with a more optimized version.
- Specified by:
removeElements
in interfaceByteList
- Overrides:
removeElements
in classAbstractByteList
- Parameters:
from
- the start index (inclusive).to
- the end index (exclusive).
-
addElements
public void addElements(int index, byte[] a) Description copied from class:AbstractByteList
Add (hopefully quickly) elements to this type-specific list.- Specified by:
addElements
in interfaceByteList
- Overrides:
addElements
in classAbstractByteList
- Parameters:
index
- the index at which to add elements.a
- the array containing the elements.
-
addElements
public void addElements(int index, byte[] a, int offset, int length) Description copied from class:AbstractByteList
Add (hopefully quickly) elements to this type-specific list.This is a trivial iterator-based implementation. It is expected that implementations will override this method with a more optimized version.
- Specified by:
addElements
in interfaceByteList
- Overrides:
addElements
in classAbstractByteList
- Parameters:
index
- the index at which to add elements.a
- the array containing the elements.offset
- the offset of the first element to add.length
- the number of elements to add.
-
setElements
public void setElements(byte[] a) Description copied from interface:ByteList
Set (hopefully quickly) elements to match the array given.- Specified by:
setElements
in interfaceByteList
- Parameters:
a
- the array containing the elements.
-
setElements
public void setElements(int index, byte[] a) Description copied from interface:ByteList
Set (hopefully quickly) elements to match the array given.- Specified by:
setElements
in interfaceByteList
- Parameters:
index
- the index at which to start setting elements.a
- the array containing the elements.
-
setElements
public void setElements(int index, byte[] a, int offset, int length) Description copied from interface:ByteList
Set (hopefully quickly) elements to match the array given. Sets each in this list to the corresponding elements in the array, as if byListIterator iter = listIterator(index); int i = 0; while (i < length) { iter.next(); iter.set(a[offset + i++]); }
However, the exact implementation may be more efficient, taking into account whether random access is faster or not, or at the discretion of subclasses, abuse internals.- Specified by:
setElements
in interfaceByteList
- Overrides:
setElements
in classAbstractByteList
- Parameters:
index
- the index at which to start setting elements.a
- the array containing the elementsoffset
- the offset of the first element to add.length
- the number of elements to add.
-
size
public int size()- Specified by:
size
in interfaceCollection<Byte>
- Specified by:
size
in interfaceList<Byte>
- Specified by:
size
in classAbstractCollection<Byte>
-
size
public void size(int size) Description copied from interface:ByteList
Sets the size of this list.If the specified size is smaller than the current size, the last elements are discarded. Otherwise, they are filled with 0/
null
/false
.- Specified by:
size
in interfaceByteList
- Overrides:
size
in classAbstractByteList
- Parameters:
size
- the new size.
-
clear
public void clear()Description copied from class:AbstractByteList
- Specified by:
clear
in interfaceCollection<Byte>
- Specified by:
clear
in interfaceList<Byte>
- Overrides:
clear
in classAbstractByteList
-
clone
-