Tuple3.java

  1. package de.turnertech.tuples;

  2. import java.util.Objects;

  3. /**
  4.  * A Triplet
  5.  */
  6. public class Tuple3<A,B,C> extends Tuple {

  7.     private final A element0;

  8.     private final B element1;

  9.     private final C element2;

  10.     /**
  11.      * Constructor
  12.      * @param element0 element 0
  13.      * @param element1 element 1
  14.      * @param element2 element 2
  15.      */
  16.     public Tuple3(A element0, B element1, C element2) {
  17.         super(new Object[]{Objects.requireNonNull(element0), Objects.requireNonNull(element1), Objects.requireNonNull(element2)});
  18.         this.element0 = element0;
  19.         this.element1 = element1;
  20.         this.element2 = element2;
  21.     }

  22.     /**
  23.      * Gets element at the 0 index
  24.      * @return element at the 0 index
  25.      */
  26.     public A getElement0() {
  27.         return element0;
  28.     }

  29.     /**
  30.      * Gets element at the 1 index
  31.      * @return element at the 1 index
  32.      */
  33.     public B getElement1() {
  34.         return element1;
  35.     }

  36.     /**
  37.      * Gets element at the 2 index
  38.      * @return element at the 2 index
  39.      */
  40.     public C getElement2() {
  41.         return element2;
  42.     }
  43.    
  44. }