Class ObjDoublePair<A>

  • Type Parameters:
    A - the type of the object
    All Implemented Interfaces:
    Tuple, java.io.Serializable, java.lang.Comparable<ObjDoublePair<A>>, Bean, ImmutableBean

    public final class ObjDoublePair<A>
    extends java.lang.Object
    implements ImmutableBean, Tuple, java.lang.Comparable<ObjDoublePair<A>>, java.io.Serializable
    An immutable pair consisting of an Object and a double.

    This class is similar to Pair but includes a primitive element.

    This class is immutable and thread-safe.

    See Also:
    Serialized Form
    • Method Detail

      • of

        public static <A> ObjDoublePair<A> of​(A first,
                                              double second)
        Obtains an instance from an Object and a double.
        Type Parameters:
        A - the first element type
        Parameters:
        first - the first element
        second - the second element
        Returns:
        a pair formed from the two parameters
      • ofPair

        public static <A> ObjDoublePair<A> ofPair​(Pair<A,​java.lang.Double> pair)
        Obtains an instance from a Pair.
        Type Parameters:
        A - the first element type
        Parameters:
        pair - the pair to convert
        Returns:
        a pair formed by extracting values from the pair
      • size

        public int size()
        Gets the number of elements held by this pair.
        Specified by:
        size in interface Tuple
        Returns:
        size 2
      • elements

        public com.google.common.collect.ImmutableList<java.lang.Object> elements()
        Gets the elements from this pair as a list.

        The list returns each element in the pair in order.

        Specified by:
        elements in interface Tuple
        Returns:
        the elements as an immutable list
      • toPair

        public Pair<A,​java.lang.Double> toPair()
        Converts this pair to an object-based Pair.
        Returns:
        the object-based pair
      • compareTo

        public int compareTo​(ObjDoublePair<A> other)
        Compares the pair based on the first element followed by the second element.

        The first element must be Comparable.

        Specified by:
        compareTo in interface java.lang.Comparable<A>
        Parameters:
        other - the other pair
        Returns:
        negative if this is less, zero if equal, positive if greater
        Throws:
        java.lang.ClassCastException - if the object is not comparable
      • toString

        public java.lang.String toString()
        Gets the pair using a standard string format.

        The standard format is '[$first, $second]'. Spaces around the values are trimmed.

        Overrides:
        toString in class java.lang.Object
        Returns:
        the pair as a string
      • meta

        public static ObjDoublePair.Meta meta()
        The meta-bean for ObjDoublePair.
        Returns:
        the meta-bean, not null
      • metaObjDoublePair

        public static <R> ObjDoublePair.Meta<R> metaObjDoublePair​(java.lang.Class<R> cls)
        The meta-bean for ObjDoublePair.
        Type Parameters:
        R - the bean's generic type
        Parameters:
        cls - the bean's generic type
        Returns:
        the meta-bean, not null
      • getFirst

        public A getFirst()
        Gets the first element in this pair.
        Returns:
        the value of the property, not null
      • getSecond

        public double getSecond()
        Gets the second element in this pair.
        Returns:
        the value of the property
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object