Package elki.data

Class OneDimensionalDoubleVector

  • All Implemented Interfaces:
    FeatureVector<java.lang.Number>, NumberVector, SpatialComparable

    public class OneDimensionalDoubleVector
    extends java.lang.Object
    implements NumberVector
    Specialized class implementing a one-dimensional double vector without using an array. Saves a little bit of memory, albeit we cannot avoid boxing as long as we want to implement the interface.
    Since:
    0.4.0
    Author:
    Erich Schubert
    • Constructor Detail

      • OneDimensionalDoubleVector

        public OneDimensionalDoubleVector​(double val)
        Constructor.
        Parameters:
        val - Value
    • Method Detail

      • getDimensionality

        public int getDimensionality()
        Description copied from interface: FeatureVector
        The dimensionality of the vector space where of this FeatureVector of V is an element.
        Specified by:
        getDimensionality in interface FeatureVector<java.lang.Number>
        Specified by:
        getDimensionality in interface SpatialComparable
        Returns:
        the number of dimensions of this FeatureVector of V
      • doubleValue

        public double doubleValue​(int dimension)
        Description copied from interface: NumberVector
        Returns the value in the specified dimension as double.

        Note: this might seem redundant with respect to getValue(dim).doubleValue(), but usually this is much more efficient due to boxing/unboxing cost.

        Specified by:
        doubleValue in interface NumberVector
        Parameters:
        dimension - the desired dimension, where 0 ≤ dimension < this.getDimensionality()
        Returns:
        the value in the specified dimension
      • longValue

        public long longValue​(int dimension)
        Description copied from interface: NumberVector
        Returns the value in the specified dimension as long.

        Note: this might seem redundant with respect to getValue(dim).longValue(), but usually this is much more efficient due to boxing/unboxing cost.

        Specified by:
        longValue in interface NumberVector
        Parameters:
        dimension - the desired dimension, where 0 ≤ dimension < this.getDimensionality()
        Returns:
        the value in the specified dimension
      • toArray

        public double[] toArray()
        Description copied from interface: NumberVector
        Returns a double array copy of this vector.
        Specified by:
        toArray in interface NumberVector
        Returns:
        Copy as double[]