Class DoublesArray

    • Field Detail

      • a

        public double[] a
      • n

        public int n
    • Constructor Detail

      • DoublesArray

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

        public DoublesArray​(int n)
      • DoublesArray

        public DoublesArray()
      • DoublesArray

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

        public DoublesArray​(Doubles xs)
        Clones the sequence arg.
    • Method Detail

      • v

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

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

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

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

        public double[] copyOf()
        Specified by:
        copyOf in interface Doubles
      • isEmpty

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

        public double first()
        Specified by:
        first in interface Doubles
      • last

        public double last()
        Specified by:
        last in interface Doubles
      • set

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

        public void insert​(int i,
                           double[] vs,
                           int from,
                           int to)
        Specified by:
        insert in interface DoublesModifiable
      • 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​(double[] vs,
                            int from,
                            int to)
        Specified by:
        prepend in interface DoublesModifiable
      • 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​(double[] vs,
                           int from,
                           int to)
        Specified by:
        append in interface DoublesModifiable
      • 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​(double v)
        Description copied from interface: DoublesModifiable
        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 DoublesModifiable
      • removeRange

        public void removeRange​(int from,
                                int to)
        Description copied from interface: DoublesModifiable
        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 DoublesModifiable
      • removeIndex

        public void removeIndex​(int index)
        Description copied from interface: DoublesModifiable
        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 DoublesModifiable
      • newArray

        public static double[] 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.