Class Triple<T1,T2,T3>
- java.lang.Object
-
- dk.cloudcreate.essentials.shared.functional.tuple.Triple<T1,T2,T3>
-
- Type Parameters:
T1- the first element typeT2- the second element typeT3- the third element type
- All Implemented Interfaces:
Tuple<Triple<T1,T2,T3>>,Serializable
public class Triple<T1,T2,T3> extends Object implements Tuple<Triple<T1,T2,T3>>
Represents aTuplewith three elements.
Note:Triplesupportsequals(Object)comparison using subclasses, e.g.:public class LeftMiddleAndRightSide extends Triple<String, String, String> { public LeftMiddleAndRightSide(String leftSide, String middle, String rightSide) { super(leftSide, middle, rightSide); } }- See Also:
- Serialized Form
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description T1_1()The first element in this tupleT2_2()The second element in this tupleT3_3()The third element in this tupleintarity()Number of arguments/elements in the Tuplebooleanequals(Object o)inthashCode()<R1,R2,R3>
Triple<R1,R2,R3>map(TripleFunction<? super T1,? super T2,? super T3,Triple<R1,R2,R3>> mappingFunction)Maps the elements of thisTripleusing the mapping function<R1,R2,R3>
Triple<R1,R2,R3>map(Function<? super T1,? super R1> mappingFunction1, Function<? super T2,? super R2> mappingFunction2, Function<? super T3,? super R3> mappingFunction3)Maps the elements of thisTripleusing three distinct mapping functions<R1> Triple<R1,T2,T3>map1(Function<? super T1,? super R1> mappingFunction1)Map the first element of thisTripleusing the mapping function<R2> Triple<T1,R2,T3>map2(Function<? super T2,? super R2> mappingFunction2)Map the second element of thisTripleusing the mapping function<R3> Triple<T1,T2,R3>map3(Function<? super T3,? super R3> mappingFunction3)Map the third element of thisTripleusing the mapping functionList<?>toList()Convert the Tuple to a listStringtoString()
-
-
-
Method Detail
-
arity
public int arity()
Description copied from interface:TupleNumber of arguments/elements in the Tuple
-
_1
public T1 _1()
The first element in this tuple- Returns:
- The first element in this tuple
-
_2
public T2 _2()
The second element in this tuple- Returns:
- The second element in this tuple
-
_3
public T3 _3()
The third element in this tuple- Returns:
- The third element in this tuple
-
map
public <R1,R2,R3> Triple<R1,R2,R3> map(TripleFunction<? super T1,? super T2,? super T3,Triple<R1,R2,R3>> mappingFunction)
Maps the elements of thisTripleusing the mapping function- Type Parameters:
R1- result type for first element of theTripleafter applying the mapping functionR2- result type for second element of theTripleafter applying the mapping functionR3- result type for third element of theTripleafter applying the mapping function- Parameters:
mappingFunction- the mapping function- Returns:
- a new
Triplewith the result of applying the mapping function to thisTriple
-
map
public <R1,R2,R3> Triple<R1,R2,R3> map(Function<? super T1,? super R1> mappingFunction1, Function<? super T2,? super R2> mappingFunction2, Function<? super T3,? super R3> mappingFunction3)
Maps the elements of thisTripleusing three distinct mapping functions- Type Parameters:
R1- result type for first element of theTripleafter applying the mapping functionR2- result type for second element of theTripleafter applying the mapping functionR3- result type for third element of theTripleafter applying the mapping function- Parameters:
mappingFunction1- the mapping function for element number 1mappingFunction2- the mapping function for element number 2mappingFunction3- the mapping function for element number 3- Returns:
- a new
Triplewith the result of applying the mapping function to thisTriple
-
map1
public <R1> Triple<R1,T2,T3> map1(Function<? super T1,? super R1> mappingFunction1)
Map the first element of thisTripleusing the mapping function
-
map2
public <R2> Triple<T1,R2,T3> map2(Function<? super T2,? super R2> mappingFunction2)
Map the second element of thisTripleusing the mapping function
-
map3
public <R3> Triple<T1,T2,R3> map3(Function<? super T3,? super R3> mappingFunction3)
Map the third element of thisTripleusing the mapping function
-
-