Un triplete es una tupla de la biblioteca JavaTuples que trata con 3 elementos. Dado que este triplete es una clase genérica, puede contener cualquier tipo de valor.
Dado que Triplet es una Tuple, también tiene todas las características de JavaTuples:
- son seguros para tipos
- son inmutables
- son iterables
- son serializables
- They are Comparable (implementa Comparable<Tuple>)
- Implementan equals() y hashCode()
- También implementan toString()
Declaración de clase
public final class Triplet<A, B, C> extends Tuple implements IValue0<A>, IValue1<B>, IValue2<C>
Jerarquía de clases
Object ↳ org.javatuples.Tuple ↳ org.javatuples.Triplet<A, B, C>
Creación de tupla triplete
- Del Constructor :
Sintaxis :
Triplet<A, B, C> triplet = new Triplet<A, B, C>(value1, value2, value3);
Ejemplo :
Java
// Below is a Java program to create // a Triplet tuple from Constructor import java.util.*; import org.javatuples.Triplet; class GfG { public static void main(String[] args) { Triplet<Integer, String, String> triplet = new Triplet<Integer, String, String>(Integer.valueOf(1), "GeeksforGeeks", "A computer portal"); System.out.println(triplet); } }
Producción:
[1, GeeksforGeeks, A computer portal]
- Uso del método with() : El método with() es una función proporcionada por la biblioteca JavaTuples, para instanciar el objeto con dichos valores.
Sintaxis :
Triplet<type1, type2, type3> triplet = Triplet.with(value1, value2, value3);
Ejemplo :
Java
// Below is a Java program to create // a Triplet tuple from with() method import java.util.*; import org.javatuples.Triplet; class GfG { public static void main(String[] args) { Triplet<Integer, String, String> triplet = Triplet.with(Integer.valueOf(1), "GeeksforGeeks", "A computer portal"); System.out.println(triplet); } }
Producción:
[1, GeeksforGeeks, A computer portal]
- De otras colecciones : el método fromCollection() se usa para crear una tupla a partir de una colección, y el método fromArray() se usa para crear a partir de una array. La colección/array debe tener el mismo tipo que la tupla y el número de valores de la colección/array debe coincidir con la clase de tupla.
Sintaxis :
Triplet<type1, type2, type3> triplet = Triplet.fromCollection(collectionWith_2_value); Triplet<type1, type2, type3> triplet = Triplet.fromArray(arrayWith_2_value);
Ejemplo :
Java
// Below is a Java program to create // a Triplet tuple from Collection import java.util.*; import org.javatuples.Triplet; class GfG { public static void main(String[] args) { // Creating Triplet from List List<String> list = new ArrayList<String>(); list.add("GeeksforGeeks"); list.add("A computer portal"); list.add("for geeks"); Triplet<String, String, String> triplet = Triplet.fromCollection(list); // Creating Triplet from Array String[] arr = { "GeeksforGeeks", "A computer portal", "for geeks" }; Triplet<String, String, String> otherTriplet = Triplet.fromArray(arr); System.out.println(triplet); System.out.println(otherTriplet); } }
Producción:
[GeeksforGeeks, A computer portal, for geeks] [GeeksforGeeks, A computer portal, for geeks]
Obtener valor
El método getValueX() se puede utilizar para obtener el valor de una tupla en el índice X. La indexación en las tuplas comienza con 0. Por lo tanto, el valor en el índice X representa el valor en la posición X+1.
Sintaxis :
Triplet<type1, type2, type3> triplet = new Triplet<type1, type2, type3>(value1, value2, value3); type1 val1 = triplet.getValue0();
Ejemplo :
Java
// Below is a Java program to get // a Triplet value import java.util.*; import org.javatuples.Triplet; class GfG { public static void main(String[] args) { Triplet<Integer, String, String> triplet = Triplet.with(Integer.valueOf(1), "GeeksforGeeks", "A computer portal"); System.out.println(triplet.getValue0()); System.out.println(triplet.getValue2()); } }
Producción:
1 A computer portal
Configuración del valor del triplete
Dado que las tuplas son inmutables , significa que no es posible modificar un valor en un índice. Por lo tanto, JavaTuples ofrece setAtX (valor) que crea una copia de la Tupla con un nuevo valor en el índice X y devuelve esa Tupla.
Sintaxis :
Triplet<type1, type2, type3> triplet = new Triplet<type1, type2, type3> (value1, value2, value3); Triplet<type1, type2, type3> otherTriplet = triplet.setAtX(value);
Ejemplo :
Java
// Below is a Java program to set // a Triplet value import java.util.*; import org.javatuples.Triplet; class GfG { public static void main(String[] args) { Triplet<Integer, String, String> triplet = Triplet.with(Integer.valueOf(1), "GeeksforGeeks", "A computer portal"); Triplet<Integer, String, String> otherTriplet = triplet.setAt1("A computer portal for geeks"); System.out.println(otherTriplet); } }
Producción:
[1, GeeksforGeeks, A computer portal for geeks]
Agregar un valor
Se puede agregar un valor con la ayuda del método addAtX() , donde X representa el índice en el que se agregará el valor. Este método devuelve una Tupla de elemento uno más que la Tupla llamada.
Sintaxis :
Triplet<type1, type2, type3> triplet = new Triplet<type1, type2, type3>(value1, value2, value3); Quartet<type 1, type 2, type 3, type 4> quartet = triplet.addAt3(value);
Ejemplo :
Java
// Below is a Java program to add // a value import java.util.*; import org.javatuples.Triplet; import org.javatuples.Quartet; class GfG { public static void main(String[] args) { Triplet<Integer, String, String> triplet = Triplet.with(Integer.valueOf(1), "GeeksforGeeks", "A computer portal"); Quartet<Integer, String, String, String> quartet = triplet.addAt3("for geeks"); System.out.println(quartet); } }
Producción:
[1, GeeksforGeeks, A computer portal, for geeks]
Buscando en triplete
Se puede buscar un elemento en una tupla con el método predefinido contains() . Devuelve un valor booleano ya sea que el valor esté presente o no.
Sintaxis :
Triplet<type1, type2, type3> triplet = new Triplet<type1, type2, type3>(value1, value2, value3); boolean res = triplet.contains(value2);
Ejemplo :
Java
// Below is a Java program to search // a value in a Triplet import java.util.*; import org.javatuples.Triplet; class GfG { public static void main(String[] args) { Triplet<Integer, String, String> triplet = Triplet.with(Integer.valueOf(1), "GeeksforGeeks", "A computer portal"); boolean exist = triplet.contains("GeeksforGeeks"); boolean exist1 = triplet.contains(4); System.out.println(exist); System.out.println(exist1); } }
Producción:
true false
Iterando a través de Triplet
Dado que Triplet implementa la interfaz Iterable<Object> . Significa que se pueden iterar de la misma manera que las colecciones o los arreglos.
Sintaxis :
Triplet<type1, type2, type3> triplet = new Triplet<type1, type2, type3>(value1, value2, value3); for (Object item : triplet) { ... }
Ejemplo :
Java
// Below is a Java program to iterate // a Triplet import java.util.*; import org.javatuples.Triplet; class GfG { public static void main(String[] args) { Triplet<Integer, String, String> triplet = Triplet.with(Integer.valueOf(1), "GeeksforGeeks", "A computer portal"); for (Object item : triplet) System.out.println(item); } }
Producción:
1 GeeksforGeeks A computer portal
Publicación traducida automáticamente
Artículo escrito por RishabhPrabhu y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA