it.unimi.dsi.fastutil.bytes
Interface ByteList

All Superinterfaces:
ByteCollection, Collection, Comparable, List
All Known Implementing Classes:
AbstractByteList

public interface ByteList
extends List, Comparable, ByteCollection

A type-specific List; provides some additional methods that use polymorphism to reduce type juggling.

Note that this type-specific interface extends Comparable: it is expected that implementing classes perform a lexicographical comparison using the standard operator "less then" for primitive types, and the usual compareTo() method for objects.

Besides polymorphic methods, this interfaces specifies methods to copy into an array or remove contiguous sublists. Although the abstract implementation of this interface provides simple, one-by-one implementations of these methods, it is expected that concrete implementation override them with optimised versions.

See Also:
List

Method Summary
 void add(int index, byte key)
           
 boolean addAll(ByteList c)
           
 boolean addAll(int index, ByteCollection c)
           
 boolean addAll(int index, ByteList c)
           
 ByteListIterator byteListIterator()
          Returns a type-specific list iterator on the list.
 ByteListIterator byteListIterator(int index)
          Returns a type-specific list iterator on the list starting at a given index.
 ByteList byteSubList(int from, int to)
           
 byte getByte(int index)
           
 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)
           
 int lastIndexOf(byte k)
           
 byte removeByte(int index)
           
 void removeElements(int from, int to)
          Removes (hopefully quickly) elements of this type-specific list.
 byte set(int index, byte k)
           
 void size(int size)
          Sets the size of this list.
 
Methods inherited from interface java.util.List
add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, retainAll, set, size, subList, toArray, toArray
 
Methods inherited from interface java.lang.Comparable
compareTo
 
Methods inherited from interface it.unimi.dsi.fastutil.bytes.ByteCollection
add, addAll, byteIterator, contains, containsAll, remove, removeAll, retainAll, toArray, toByteArray, toByteArray
 

Method Detail

byteListIterator

public ByteListIterator byteListIterator()
Returns a type-specific list iterator on the list.

The iterator returned by the List.listIterator() method and by this method are identical; however, using this method you can save a type casting.

See Also:
List.listIterator()

byteListIterator

public ByteListIterator byteListIterator(int index)
Returns a type-specific list iterator on the list starting at a given index.

The iterator returned by the List.listIterator() method and by this method are identical; however, using this method you can save a type casting.

See Also:
List.listIterator(int)

byteSubList

public ByteList byteSubList(int from,
                            int to)
See Also:
List.subList(int,int)

size

public void size(int size)
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.

Parameters:
size - the new size.

getElements

public void getElements(int from,
                        byte[] a,
                        int offset,
                        int length)
Copies (hopefully quickly) elements of this type-specific list into the given array.

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)
Removes (hopefully quickly) elements of this type-specific list.

Parameters:
from - the start index (inclusive).
to - the end index (exclusive).

add

public void add(int index,
                byte key)
See Also:
List.add(int,Object)

addAll

public boolean addAll(int index,
                      ByteCollection c)
See Also:
List.add(int,Object)

addAll

public boolean addAll(int index,
                      ByteList c)
See Also:
List.add(int,Object)

addAll

public boolean addAll(ByteList c)
See Also:
List.add(int,Object)

getByte

public byte getByte(int index)
See Also:
List.get(int)

indexOf

public int indexOf(byte k)
See Also:
List.indexOf(Object)

lastIndexOf

public int lastIndexOf(byte k)
See Also:
List.lastIndexOf(Object)

removeByte

public byte removeByte(int index)
See Also:
List.remove(int)

set

public byte set(int index,
                byte k)
See Also:
List.set(int,Object)