Package gnu.trove.list

# Interface TCharList

All Superinterfaces:
  `TCharCollection`

All Known Implementing Classes:
  `TCharArrayList`, `TCharLinkedList`

public interface TCharList extends TCharCollection
Interface for Trove list implementations.

## Field Summary

### Fields inherited from interface gnu.trove.TCharCollection

`serialVersionUID`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`add(char val)`
Adds `val` to the end of the list, growing as needed.
`void`
`add(char[] vals)`
Adds the values in the array `vals` to the end of the list, in order.
`void`
`add(char[] vals, int offset, int length)`
Adds a subset of the values in the array `vals` to the end of the list, in order.
`int`
`binarySearch(char value)`
Performs a binary search for `value` in the entire list.
`int`
`binarySearch(char 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.
`boolean`
`contains(char value)`
Searches the list for `value`
`void`
`fill(char val)`
Fills every slot in the list with the specified value.
`void`
`fill(int fromIndex, int toIndex, char val)`
Fills a range in the list with the specified value.
`boolean`
`forEach(TCharProcedure procedure)`
Applies the procedure to each value in the list in ascending (front to back) order.
`boolean`
`forEachDescending(TCharProcedure procedure)`
Applies the procedure to each value in the list in descending (back to front) order.
`char`
`get(int offset)`
Returns the value at the specified offset.
`char`
`getNoEntryValue()`
Returns the value that is used to represent null.
`TCharList`
`grep(TCharProcedure condition)`
Searches the list for values satisfying `condition` in the manner of the *nix `grep` utility.
`int`
`indexOf(char value)`
Searches the list front to back for the index of `value`.
`int`
`indexOf(int offset, char value)`
Searches the list front to back for the index of `value`, starting at `offset`.
`void`
`insert(int offset, char value)`
Inserts `value` into the list at `offset`.
`void`
`insert(int offset, char[] values)`
Inserts the array of `values` into the list at `offset`.
`void`
`insert(int offset, char[] values, int valOffset, int len)`
Inserts a slice of the array of `values` into the list at `offset`.
`TCharList`
`inverseGrep(TCharProcedure condition)`
Searches the list for values which do not satisfy `condition`.
`boolean`
`isEmpty()`
Tests whether this list contains any values.
`int`
`lastIndexOf(char value)`
Searches the list back to front for the last index of `value`.
`int`
`lastIndexOf(int offset, char value)`
Searches the list back to front for the last index of `value`, starting at `offset`.
`char`
`max()`
Finds the maximum value in the list.
`char`
`min()`
Finds the minimum value in the list.
`boolean`
`remove(char value)`
Removes `value` from the list.
`void`
`remove(int offset, int length)`
Removes `length` values from the list, starting at `offset`
`char`
`removeAt(int offset)`
Removes `value` at a given offset from the list.
`char`
`replace(int offset, char val)`
Sets the value at the specified offset and returns the previously stored value.
`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.
`char`
`set(int offset, char val)`
Sets the value at the specified offset.
`void`
`set(int offset, char[] values)`
Replace the values in the list starting at `offset` with the contents of the `values` array.
`void`
`set(int offset, char[] 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`
`shuffle(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.
`TCharList`
`subList(int begin, int end)`
Returns a sublist of this list.
`char`
`sum()`
Calculates the sum of all the values in the list.
`char[]`
`toArray()`
Copies the contents of the list into a native array.
`char[]`
`toArray(char[] dest)`
Copies a slice of the list into a native array.
`char[]`
`toArray(char[] dest, int offset, int len)`
Copies a slice of the list into a native array.
`char[]`
`toArray(char[] dest, int source_pos, int dest_pos, int len)`
Copies a slice of the list into a native array.
`char[]`
`toArray(int offset, int len)`
Copies a slice of the list into a native array.
`void`
`transformValues(TCharFunction function)`
Transform each value in the list using the specified function.

### Methods inherited from interface gnu.trove.TCharCollection

`addAll, addAll, addAll, containsAll, containsAll, containsAll, equals, hashCode, iterator, removeAll, removeAll, removeAll, retainAll, retainAll, retainAll`

## Method Details

### getNoEntryValue

char getNoEntryValue()
Returns the value that is used to represent null. The default value is generally zero, but can be changed during construction of the collection.

Specified by:
  `getNoEntryValue` in interface `TCharCollection`
Returns:
  the value that represents null

### size

int size()
Returns the number of values in the list.

Specified by:
  `size` in interface `TCharCollection`
Returns:
  the number of values in the list.

### isEmpty

boolean isEmpty()
Tests whether this list contains any values.

Specified by:
  `isEmpty` in interface `TCharCollection`
Returns:
  true if the list is empty.

### add

boolean add(char val)
Adds `val` to the end of the list, growing as needed.

Specified by:
  `add` in interface `TCharCollection`
Parameters:
  `val` - an `char` value
Returns:
  true if the list was modified by the add operation

### add

void add(char[] vals)
Adds the values in the array `vals` to the end of the list, in order.

Parameters:
  `vals` - an `char[]` value

### add

void add(char[] vals, int offset, int length)
Adds a subset of the values in the array `vals` to the end of the list, in order.

Parameters:
  `vals` - an `char[]` value
  `offset` - the offset at which to start copying
  `length` - the number of values to copy.

### insert

void insert(int offset, char value)
Inserts `value` into the list at `offset`. All values including and to the right of `offset` are shifted to the right.

Parameters:
  `offset` - an `int` value
  `value` - an `char` value

### insert

void insert(int offset, char[] values)
Inserts the array of `values` into the list at `offset`. All values including and to the right of `offset` are shifted to the right.

Parameters:
  `offset` - an `int` value
  `values` - an `char[]` value

### insert

void insert(int offset, char[] values, int valOffset, int len)
Inserts a slice of the array of `values` into the list at `offset`. All values including and to the right of `offset` are shifted to the right.

Parameters:
  `offset` - an `int` value
  `values` - an `char[]` value
  `valOffset` - the offset in the values array at which to start copying.
  `len` - the number of values to copy from the values array

### get

char get(int offset)
Returns the value at the specified offset.

Parameters:
  `offset` - an `int` value
Returns:
  an `char` value

### set

char set(int offset, char val)
Sets the value at the specified offset.

Parameters:
  `offset` - an `int` value
  `val` - an `char` value
Returns:
  The value previously at the given index.

### set

void set(int offset, char[] values)
Replace the values in the list starting at `offset` with the contents of the `values` array.

Parameters:
  `offset` - the first offset to replace
  `values` - the source of the new values

### set

void set(int offset, char[] values, int valOffset, int length)
Replace the values in the list starting at `offset` with `length` values from the `values` array, starting at valOffset.

Parameters:
  `offset` - the first offset to replace
  `values` - the source of the new values
  `valOffset` - the first value to copy from the values array
  `length` - the number of values to copy

### replace

char replace(int offset, char val)
Sets the value at the specified offset and returns the previously stored value.

Parameters:
  `offset` - an `int` value
  `val` - an `char` value
Returns:
  the value previously stored at offset.

### clear

void clear()
Flushes the internal state of the list, resetting the capacity to the default.

Specified by:
  `clear` in interface `TCharCollection`

### remove

boolean remove(char value)
Removes `value` from the list.

Specified by:
  `remove` in interface `TCharCollection`
Parameters:
  `value` - an `char` value
Returns:
  true if the list was modified by the remove operation.

### removeAt

char removeAt(int offset)
Removes `value` at a given offset from the list.

Parameters:
  `offset` - an `int` value that represents the offset to the element to be removed
Returns:
  an `char` that is the value removed.

### remove

void remove(int offset, int length)
Removes `length` values from the list, starting at `offset`

Parameters:
  `offset` - an `int` value
  `length` - an `int` value

### transformValues

void transformValues(TCharFunction function)
Transform each value in the list using the specified function.

Parameters:
  `function` - a `TCharFunction` value

### reverse

void reverse()
Reverse the order of the elements in the list.

### reverse

void reverse(int from, int to)
Reverse the order of the elements in the range of the list.

Parameters:
  `from` - the inclusive index at which to start reversing
  `to` - the exclusive index at which to stop reversing

### shuffle

void shuffle(Random rand)
Shuffle the elements of the list using the specified random number generator.

Parameters:
  `rand` - a `Random` value

### subList

TCharList subList(int begin, int end)
Returns a sublist of this list.

Parameters:
  `begin` - low endpoint (inclusive) of the subList.
  `end` - high endpoint (exclusive) of the subList.
Returns:
  sublist of this list from begin, inclusive to end, exclusive.
Throws:
  `IndexOutOfBoundsException` - - endpoint out of range
  `IllegalArgumentException` - - endpoints out of order (end > begin)

### toArray

char[] toArray()
Copies the contents of the list into a native array.

Specified by:
  `toArray` in interface `TCharCollection`
Returns:
  an `char[]` value

### toArray

char[] toArray(int offset, int len)
Copies a slice of the list into a native array.

Parameters:
  `offset` - the offset at which to start copying
  `len` - the number of values to copy.
Returns:
  an `char[]` value

### toArray

char[] toArray(char[] dest)
Copies a slice of the list into a native array.

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 ``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.

Specified by:
  `toArray` in interface `TCharCollection`
Parameters:
  `dest` - the array to copy into.
Returns:
  the array passed in.

### toArray

char[] toArray(char[] dest, int offset, int len)
Copies a slice of the list into a native array.

Parameters:
  `dest` - the array to copy into.
  `offset` - the offset where the first value should be copied
  `len` - the number of values to copy.
Returns:
  the array passed in.

### toArray

char[] toArray(char[] dest, int source_pos, int dest_pos, int len)
Copies a slice of the list into a native array.

Parameters:
  `dest` - the array to copy into.
  `source_pos` - the offset of the first value to copy
  `dest_pos` - the offset where the first value should be copied
  `len` - the number of values to copy.
Returns:
  the array passed in.

### forEach

boolean forEach(TCharProcedure procedure)
Applies the procedure to each value in the list in ascending (front to back) order.

Specified by:
  `forEach` in interface `TCharCollection`
Parameters:
  `procedure` - a `TCharProcedure` value
Returns:
  true if the procedure did not terminate prematurely.

### forEachDescending

boolean forEachDescending(TCharProcedure procedure)
Applies the procedure to each value in the list in descending (back to front) order.

Parameters:
  `procedure` - a `TCharProcedure` value
Returns:
  true if the procedure did not terminate prematurely.

### sort

void sort()
Sort the values in the list (ascending) using the Sun quicksort implementation.

See Also:
  - `Arrays.sort(int[])`

### sort

void sort(int fromIndex, int toIndex)
Sort a slice of the list (ascending) using the Sun quicksort implementation.

Parameters:
  `fromIndex` - the index at which to start sorting (inclusive)
  `toIndex` - the index at which to stop sorting (exclusive)
See Also:
  - `Arrays.sort(int[])`

### fill

void fill(char val)
Fills every slot in the list with the specified value.

Parameters:
  `val` - the value to use when filling

### fill

void fill(int fromIndex, int toIndex, char val)
Fills a range in the list with the specified value.

Parameters:
  `fromIndex` - the offset at which to start filling (inclusive)
  `toIndex` - the offset at which to stop filling (exclusive)
  `val` - the value to use when filling

### binarySearch

int binarySearch(char value)
Performs a binary search for `value` in the entire list. Note that you must @{link #sort sort} the list before doing a search.

Parameters:
  `value` - the value to search for
Returns:
  the absolute offset in the list of the value, or its negative insertion point into the sorted list.

### binarySearch

int binarySearch(char value, int fromIndex, int toIndex)
Performs a binary search for `value` in the specified range. Note that you must @{link #sort sort} the list or the range before doing a search.

Parameters:
  `value` - the value to search for
  `fromIndex` - the lower boundary of the range (inclusive)
  `toIndex` - the upper boundary of the range (exclusive)
Returns:
  the absolute offset in the list of the value, or its negative insertion point into the sorted list.

### indexOf

int indexOf(char value)
Searches the list front to back for the index of `value`.

Parameters:
  `value` - an `char` value
Returns:
  the first offset of the value, or -1 if it is not in the list.
See Also:
  - `for faster searches on sorted lists`

### indexOf

int indexOf(int offset, char value)
Searches the list front to back for the index of `value`, starting at `offset`.

Parameters:
  `offset` - the offset at which to start the linear search (inclusive)
  `value` - an `char` value
Returns:
  the first offset of the value, or -1 if it is not in the list.
See Also:
  - `for faster searches on sorted lists`

### lastIndexOf

int lastIndexOf(char value)
Searches the list back to front for the last index of `value`.

Parameters:
  `value` - an `char` value
Returns:
  the last offset of the value, or -1 if it is not in the list.
See Also:
  - `for faster searches on sorted lists`

### lastIndexOf

int lastIndexOf(int offset, char value)
Searches the list back to front for the last index of `value`, starting at `offset`.

Parameters:
  `offset` - the offset at which to start the linear search (exclusive)
  `value` - an `char` value
Returns:
  the last offset of the value, or -1 if it is not in the list.
See Also:
  - `for faster searches on sorted lists`

### contains

boolean contains(char value)
Searches the list for `value`

Specified by:
  `contains` in interface `TCharCollection`
Parameters:
  `value` - an `char` value
Returns:
  true if value is in the list.

### grep

TCharList grep(TCharProcedure condition)
Searches the list for values satisfying `condition` in the manner of the *nix `grep` utility.

Parameters:
  `condition` - a condition to apply to each element in the list
Returns:
  a list of values which match the condition.

### inverseGrep

TCharList inverseGrep(TCharProcedure condition)
Searches the list for values which do not satisfy `condition`. This is akin to *nix `grep -v`.

Parameters:
  `condition` - a condition to apply to each element in the list
Returns:
  a list of values which do not match the condition.

### max

char max()
Finds the maximum value in the list.

Returns:
  the largest value in the list.
Throws:
  `IllegalStateException` - if the list is empty

### min

char min()
Finds the minimum value in the list.

Returns:
  the smallest value in the list.
Throws:
  `IllegalStateException` - if the list is empty

### sum

char sum()
Calculates the sum of all the values in the list.

Returns:
  the sum of the values in the list (zero if the list is empty).