Class Triple<A,​B,​C>

  • Type Parameters:
    A - the first element type
    B - the second element type
    C - the third element type
    All Implemented Interfaces:
    Serializable

    public class Triple<A,​B,​C>
    extends Object
    implements Serializable
    Generic triple (3-tuple).
    Author:
    Dimitrios Michail
    See Also:
    Serialized Form
    • Field Detail

      • first

        protected A first
        The first element
      • second

        protected B second
        The second element
      • third

        protected C third
        The third element
    • Constructor Detail

      • Triple

        public Triple​(A a,
                      B b,
                      C c)
        Create a new triple
        Parameters:
        a - the first element
        b - the second element
        c - the third element
    • Method Detail

      • getFirst

        public A getFirst()
        Get the first element
        Returns:
        the first element
      • getSecond

        public B getSecond()
        Get the second element
        Returns:
        the second element
      • getThird

        public C getThird()
        Get the third element
        Returns:
        the third element
      • setFirst

        public void setFirst​(A a)
        Set the first element
        Parameters:
        a - the element to be assigned
      • setSecond

        public void setSecond​(B b)
        Set the second element
        Parameters:
        b - the element to be assigned
      • setThird

        public void setThird​(C c)
        Set the third element
        Parameters:
        c - the element to be assigned
      • hasElement

        public <E> boolean hasElement​(E e)
        Assess if this triple contains an element.
        Type Parameters:
        E - the element type
        Parameters:
        e - The element in question
        Returns:
        true if contains the element, false otherwise
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • of

        public static <A,​B,​C> Triple<A,​B,​C> of​(A a,
                                                                       B b,
                                                                       C c)
        Create a new triple.
        Type Parameters:
        A - the first element type
        B - the second element type
        C - the third element type
        Parameters:
        a - first element
        b - second element
        c - third element
        Returns:
        new triple