Class CharsArray

    • Field Detail

      • a

        public char[] a
      • n

        public int n
    • Constructor Detail

      • CharsArray

        public CharsArray​(char[] a)
        For efficiency, does not clone the array arg.
      • CharsArray

        public CharsArray​(int n)
      • CharsArray

        public CharsArray()
      • CharsArray

        public CharsArray​(char[] a,
                          int n)
        For efficiency, does not clone the array arg.
      • CharsArray

        public CharsArray​(Chars xs)
        Clones the sequence arg.
      • CharsArray

        public CharsArray​(String xs)
    • Method Detail

      • v

        public char v​(int i)
        Description copied from interface: Chars
        Value at index i
        Specified by:
        v in interface Chars
      • n

        public int n()
        Description copied from interface: Chars
        Length of the sequence
        Specified by:
        n in interface Chars
      • copyTo

        public void copyTo​(int i,
                           char[] dest,
                           int iDest,
                           int c)
        Specified by:
        copyTo in interface Chars
      • copyTo

        public void copyTo​(int i,
                           CharBuffer dest,
                           int c)
        Specified by:
        copyTo in interface Chars
      • copyOf

        public char[] copyOf​(int i,
                             int c)
        Specified by:
        copyOf in interface Chars
      • copyOf

        public char[] copyOf()
        Specified by:
        copyOf in interface Chars
      • string

        public String string​(int i,
                             int c)
        Specified by:
        string in interface Chars
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface Chars
      • first

        public char first()
        Specified by:
        first in interface Chars
      • last

        public char last()
        Specified by:
        last in interface Chars
      • set

        public void set​(int i,
                        char v)
        Specified by:
        set in interface CharsModifiable
      • set

        public void set​(int i,
                        char[] vs)
        Specified by:
        set in interface CharsModifiable
      • set

        public void set​(int i,
                        char[] vs,
                        int from,
                        int to)
        Specified by:
        set in interface CharsModifiable
      • insert

        public void insert​(int i,
                           char[] vs,
                           int from,
                           int to)
        Specified by:
        insert in interface CharsModifiable
      • prepForInsert

        public void prepForInsert​(int i,
                                  int c)
        Makes room in this array for new values to be inserted. When this call returns, the values in this.a on [i,i+c) are undefined. Writing meaningful values to these indices is up to the caller.
        Parameters:
        i - The index at which new values will be inserted
        c - The count of new values that will be inserted
      • prepend

        public void prepend​(char[] vs,
                            int from,
                            int to)
        Specified by:
        prepend in interface CharsModifiable
      • prepForPrepend

        public void prepForPrepend​(int c)
        Makes room in this array for new values to be prepended. When this call returns, the values in this.a on [0,c) are undefined. Writing meaningful values to these indices is up to the caller.
        Parameters:
        c - The count of new values that will be inserted
      • append

        public void append​(char[] vs,
                           int from,
                           int to)
        Specified by:
        append in interface CharsModifiable
      • prepForAppend

        public void prepForAppend​(int c)
        Makes room in this array for new values to be appended. When this call returns, the values in this.a on [this.n-c,this.n) are undefined. Writing meaningful values to these indices is up to the caller.
        Parameters:
        c - The count of new values that will be appended
      • remove

        public void remove​(char v)
        Description copied from interface: CharsModifiable
        Removes a single copy of the specified value. If multiple copies are present, there is no guarantee which one will be removed.
        Specified by:
        remove in interface CharsModifiable
      • removeRange

        public void removeRange​(int from,
                                int to)
        Description copied from interface: CharsModifiable
        Removes values starting at index from (inclusive) to index to (exclusive). All other values with indices greater than or equal to index to have their index in the array decreased by to-from and the size of the array is decreased by to-from.
        Specified by:
        removeRange in interface CharsModifiable
      • removeIndex

        public void removeIndex​(int index)
        Description copied from interface: CharsModifiable
        Remove value at index. All other values with indices greater than index have their index in the array decreased by one and the size of the array is decreased by one.
        Specified by:
        removeIndex in interface CharsModifiable
      • newArray

        public static char[] newArray​(int oldCapacity,
                                      int minNewCapacity)
        Creates a new array whose capacity is at least minNewCapacity, and at least 1.618 * oldCapacity, up to Integer.MAX_VALUE.