Cuando estamos trabajando con Kotlin, en ocasiones queremos devolver dos valores de una función, solemos creamos clases para eso, pero crear demasiadas clases puede hacer que tu código sea ineficiente. Entonces, en lugar de crear clases para dos o más valores, puedes usar la clase Pair para devolver o usar dos valores y la clase Triple para devolver o usar tres valores. Veamos a continuación como funcionan estas clases nativas de Kotlin.
Partes
- Parte 1
- Parte 2 (Final)
Antes de continuar con este Post, te invito a leer los siguientes artículos:
- Que es Kotlin y otros detalles
- Tipos de Variables en Kotlin
- Creando un Bot (Android) para una tienda de Postres (Dialogflow V2 + Kotlin 1.3.72) – Parte 1
- Como funciona la referencia de métodos en Kotlin (Desmenuzando el código)
- Como implementar la función Compartir con Kotlin en Android Studio 3.3
- Puedes leer más artículos en la categoría Kotlin
Asimismo, te invito a escuchar el Podcast: “Herramientas Online Para el Trabajo en Equipo” y “La Inteligencia Artificial (IA) y el Machine Learning (ML) Siempre Trabajan de la Mano” (Anchor Podcast):
Spotify: | Sound Cloud: | Apple Podcasts | Anchor Podcasts |
Bien ahora continuemos con el Post: Como Usar Pair y Triple en Kotlin.
Como Usar Pair en Kotlin
Primero declaramos Pair usando el constructor Pair():
1 2 3 4 |
// Colocamos el Pair dentro de la variable 'miPair' val miPair = Pair(primero = "Carlos", segundo = 34) |
Luego accedemos a los valores del pair usando las variables miembro primera y segunda:
1 2 3 4 5 |
// Imprimimos en consola los valores println(miPair.primero) println(miPair.segundo) |
Al recibir a través de la función Pair(), también podemos obtener los valores de Pair con las variables nombradas así:
1 2 3 4 5 6 7 8 |
val (nombre, edad) = obtenerInformacionPersonal() println("Nombre: $nombre, Edad: $edad") fun obtenerInformacionPersonal(): Pair<String, Int> { return Pair("Carlos", 34) } |
También podemos convertir un pair en un tipo de lista List<>:
1 2 3 4 5 6 |
val miPair = Pair("Nube", "Colectiva") val lista: List<String> = miPair.toList() println("Lista: $lista") |
Como Usar Triple en Kotlin
Declaramos usando el constructor Triple():
1 2 3 4 |
// Dentro de la variable 'miTriple' definimos el constructor Triple() val miTriple = Triple(primero = "Carlos", segundo = 34, tercero = "Perú") |
Ahora accedemos al valor triple usando las variables miembro primero, segundo y tercero:
1 2 3 4 5 6 |
// Imprimimos en consola los valores println(miTriple.primero) println(miTriple.segundo) println(miTriple.tercero) |
Al recibir a través de la función Triple(), también podemos obtener los valores de Triple con las variables nombradas así:
1 2 3 4 5 6 7 8 9 10 |
val (nombre, edad, pais) = obtenerInformacionPersonal() println("Nombre: $nombre") println("Edad: $edad") println("País: $pais") fun obtenerInformacionPersonal(): Triple<String, Int, Float> { return Triple("Carlos", 34, "Perú") } |
También podemos usar multiples Pair dentro del Triple:
1 2 3 4 5 6 7 8 9 10 11 |
val miTriple = Triple( primero = Pair(primero = "Pair1 Valor1", segundo = "Pair1 Valor2"), segundo = Pair(primero = "Pair2 Valor1", segundo = "Pair2 Valor2"), tercero = Pair(primero = "Pair3 Valor1", segundo = "Pair3 Valor2") ) val miTriple = Triple( primero = Pair(primero = "Pair1 Valor1", segundo = "Pair1 Valor2"), segundo = Pair(primero = "Pair2 Valor1", segundo = "Pair2 Valor2"), tercero = Pair(primero = "Pair3 Valor1", segundo = "Pair3 Valor2") ) |
Podemos acceder a los valores de múltiples pairs desde un triple:
1 2 3 4 5 6 7 8 9 10 11 |
// Imprimimos en Consola println(miTriple.primero.primero) println(miTriple.primero.second) println(miTriple.segundo.primero) println(miTriple.segundo.segundo) println(miTriple.tercero.primero) println(miTriple.tercero.second) |
También podemos convertir un triple en un tipo de lista List<>:
1 2 3 4 5 |
val miTriple = Triple("Carlos", 34, "Perú") val lista: List<String> = miTriple.toList() println("Lista: $lista") |
Puedes usar cualquier tipo de datos con Pair() y Triple() como String, Int, Float, List, ArrayList, etc.
Conclusión
En este Post hemos aprendido a como usar las clases nativas Pair() y Triple(). La mejor manera de aprender algo, es usandola en nuestros proyectos. Como se dice la práctica hacer al maestro.
Nota (s)
- No olvides que debemos usar la Tecnología para hacer cosas Buenas por el Mundo.
Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos.