Class Pair<T1,T2>
- java.lang.Object
-
- dk.cloudcreate.essentials.shared.functional.tuple.Pair<T1,T2>
-
- Type Parameters:
T1- the first element typeT2- the second element type
- All Implemented Interfaces:
Tuple<Pair<T1,T2>>,Serializable
public class Pair<T1,T2> extends Object implements Tuple<Pair<T1,T2>>
Represents aTuplewith two elements.
Note:Pairsupportsequals(Object)comparison using subclasses, e.g.:public class LeftAndRightSide extends Pair<String, String> { public LeftAndRightSide(String leftSide, String rightSide) { super(leftSide, rightSide); } }- See Also:
- Serialized Form
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description T1_1()The first element in this tupleT2_2()The second element in this tupleintarity()Number of arguments/elements in the Tuplebooleanequals(Object o)inthashCode()<R1,R2>
Pair<R1,R2>map(BiFunction<? super T1,? super T2,Pair<R1,R2>> mappingFunction)Maps the elements of thisPairusing the mapping function<R1,R2>
Pair<R1,R2>map(Function<? super T1,? super R1> mappingFunction1, Function<? super T2,? super R2> mappingFunction2)Maps the elements of thisPairusing two distinct mapping functions<R1> Pair<R1,T2>map1(Function<? super T1,? super R1> mappingFunction1)Map the first element of thisPairusing the mapping function<R2> Pair<T1,R2>map2(Function<? super T2,? super R2> mappingFunction2)Map the second element of thisPairusing the mapping functionstatic <T1,T2>
Pair<T1,T2>of(T1 t1, T2 t2)Create a newTuplewith 2 elementsPair<T2,T1>swap()Swap the elements of thisPairMap.Entry<T1,T2>toEntry()List<?>toList()Convert the Tuple to a listStringtoString()
-
-
-
Method Detail
-
of
public static <T1,T2> Pair<T1,T2> of(T1 t1, T2 t2)
Create a newTuplewith 2 elements- Type Parameters:
T1- the first element typeT2- the second element type- Parameters:
t1- the first elementt2- the second element- Returns:
- the newly created
Pairtuple
-
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
-
map
public <R1,R2> Pair<R1,R2> map(BiFunction<? super T1,? super T2,Pair<R1,R2>> mappingFunction)
Maps the elements of thisPairusing the mapping function- Type Parameters:
R1- result type for first element of thePairafter applying the mapping functionR2- result type for second element of thePairafter applying the mapping function- Parameters:
mappingFunction- the mapping function- Returns:
- a new
Pairwith the result of applying the mapping function to thisPair
-
map
public <R1,R2> Pair<R1,R2> map(Function<? super T1,? super R1> mappingFunction1, Function<? super T2,? super R2> mappingFunction2)
Maps the elements of thisPairusing two distinct mapping functions- Type Parameters:
R1- result type for first element of thePairafter applying the mapping functionR2- result type for second element of thePairafter applying the mapping function- Parameters:
mappingFunction1- the mapping function for element number 1mappingFunction2- the mapping function for element number 2- Returns:
- a new
Pairwith the result of applying the mapping function to thisPair
-
map1
public <R1> Pair<R1,T2> map1(Function<? super T1,? super R1> mappingFunction1)
Map the first element of thisPairusing the mapping function
-
map2
public <R2> Pair<T1,R2> map2(Function<? super T2,? super R2> mappingFunction2)
Map the second element of thisPairusing the mapping function
-
-