Class ObjectsArray

    • Field Detail

      • n

        public int n
    • Constructor Detail

      • ObjectsArray

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

        public ObjectsArray​(int n)
      • ObjectsArray

        public ObjectsArray()
      • ObjectsArray

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

        public ObjectsArray​(Objects xs)
        Clones the sequence arg.
    • Method Detail

      • v

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

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

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

        public Object[] copyOf​(int i,
                               int c)
        Specified by:
        copyOf in interface Objects
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface Objects
      • 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
      • 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
      • 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​(Object v)
        Description copied from interface: ObjectsModifiable
        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 ObjectsModifiable
      • removeRange

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

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

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