JavaTuples add() method
Last Updated :
23 Aug, 2018
Improve
The add() method in org.javatuples is used to add a value to the existing tuple. Since JavaTuples are immutable, hence adding a value to the existing tuple results in a new tuple with one more value. For example, adding a value to Unit tuple results in the formation of a Pair tuple. This method can be used for any tuple class object of the javatuples library, except the Decade class, as Decade is the highest class available in JavaTuples library. It returns the tuple class object of a class higher than the called class, decided by the number of values in the arguments.
Syntax:
Java
Output:
Java
Output:
Java
Output:
Triplet<String, Integer, Double> triplet = ... ... Quartet<String, Integer, Double, type(s)> quartet = triplet.add(value(s));Parameters: This method can take n values as parameters where:
- n- represents the number of values based on the TupleClass (Unit, Pair, etc) to be created as return object.
- type- represents the type for value(s) passed as arguments.
- value- represents the value(s) passed as arguments.
// Below is a Java program to demonstrate
// use of add() method with
// single value
import java.util.*;
import org.javatuples.Unit;
import org.javatuples.Pair;
class GfG {
public static void main(String[] args)
{
// Using with() method to instantiate unit object
Unit<String> unit = Unit.with("Geeks");
// Using add() to create Pair
Pair<String, String> pair = unit.add("forGeeks");
System.out.println(pair);
}
}
[Geeks, forGeeks]Program 2: When the add() method is used with any class from Unit to Ennead, with a multiple value as parameter:
// Below is a Java program to demonstrate
// use of add() method with
// multiple value
import java.util.*;
import org.javatuples.Ennead;
import org.javatuples.Decade;
class GfG {
public static void main(String[] args)
{
// Using with() method to instantiate ennead object
Ennead<String, String, String, String, String,
String, String, String, String>
ennead = Ennead.with("Geeks",
"for",
"Geeks",
"A",
"Computer",
"Science",
"Portal",
"for",
"Geeks");
// Using add() to create Decade
Decade<String, String, String, String, String,
String, String, String, String, String>
decade = ennead.add("RishabhPrabhu");
System.out.println(decade);
}
}
[Geeks, for, Geeks, A, Computer, Science, Portal, for, Geeks, RishabhPrabhu]Program 3: When the add() method is used with any class from Unit to Ennead, with total values contribute to be more than 10, it shows Runtime Exception:
// Below is a Java program to demonstrate
// use of add() method
import java.util.*;
import org.javatuples.Ennead;
import org.javatuples.Decade;
class GfG {
public static void main(String[] args)
{
// Using with() method to instantiate ennead object
Ennead<String, String, String, String, String,
String, String, String, String>
ennead = Ennead.with("Geeks",
"for",
"Geeks",
"A",
"Computer",
"Science",
"Portal",
"for",
"Geeks");
// Using add() to create Decade
Decade<String, String, String, String, String,
String, String, String, String, String>
decade = ennead.add("Rishabh", "Prabhu");
System.out.println(decade);
}
}
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - Erroneous sym type: org.javatuples.Ennead.addNote: Similarly, it can be used with any other JavaTuple Class.