Los data class en Kotlin para almacenar y procesar datos de manera sencilla
- Andrés Cruz
Siguiendo con los tutoriales de Kotlin, hoy veremos los data class Pair
en Kotlin, que simplemente son una representación genérica (cualquier tipo de datos o clases) de dos valores (pares); son una especie de tupla pero con algunas variantes.
Los data class Pair son una estructura que permite guardar dos valores.
Los valores pares son excelente cuando queremos guardar parejas de datos; y así de simple, es una estructura que nos sirve solo para eso; el método constructor o mejor dicho la estructura básica de un valor par en Kotlin luce como el siguiente:
Pair(first: A, second: B)
El valor first
corresponde al primer valor y el de second
, como podrás imaginar.
Ya estando en la práctica, para emplear los valores pares en Kotlin es tan fácil como hacer lo siguiente:
var pair = Pair("Kotlin Pair",2)
Como puedes ver, no estamos obligados a tener valores pares del mismo tipo, son independientes y pueden tomar cualquier valor que necesitemos.
Palabra reservada Pair o to para crear valores pares
También podemos crear valores pares empleando la variable reservada to
de la siguiente forma:
var pair = "Kotlin Pair" to 2
Esto en Android es muy útil ya que podemos emplear los Pair
Para guardar una pareja de valores, por ejemplo un usuario y contraseña o cualquier pareja de valores que tengan alguna relación.
¿Cómo acceder a los valores Pair en Koltin?
Ya teniendo claro para qué sirve la estructura de los Pair en Kotlin, lo siguiente que nos interesa saber es cómo acceder a cada uno de estos valores embebidos dentro de un data class Pair
; para esto se emplean las palabras reservadas first
y second
respectivamente de la siguiente forma; teniendo nuestra variable llamada pair
definida de cualquiera de las formas anteriores:
println(pair.first) //Kotlin
println(pair.second) //Pair2
Y obtenemos como salida:
Kotlin
Pair2
También podemos emplear los métodos component1()
y component2()
respectivamente para obtener la misma salida anterior:
println(pair.component1()) //Kotlin
println(pair.component2()) //Pair2
Para cada uno de los println
respectivamente.
Descomposición de los valores par Pair
en Kotlin
También podemos separar o descomponer los valores de los pares en variables individuales e independientes de la siguiente forma; tal cual hicimos antes con los mismos data class en la entrada anterior:
val (user, password) = Pair("usuario", "contrasena")
println(user) // usuario
println(password) // contrasena
Y se obtiene:
usuario
contrasena
Recuerda siempre revisar la documentación oficial en: Kotlin: Pair y Kotlin: To.
Métodos de los valores pares
Los Pair en Kotlin cuentan con un par de métodos que podemos emplear para emplear toda la estructura al 100%; el primero de ellos es el toString
que imprime un string con los valores dos valores:
var pair = Pair("Kotlin Pair",2)
fun main(args: Array<String>) {
println(pair.toString()) // imprime (Kotlin Pair, 2)
}
Y también tenemos el método toList()
que nos retorna una lista con ambos valores pares:
var pair = Pair("Kotlin Pair",2)
fun main(args: Array<String>) {
println(pair.toList()) // imprime [Kotlin Pair, 2]
}
Inspiración para emplear valores pares
Con los valores pares podemos hacer muchas cosas, hay muchas estructuras que nos quedan perfecto emplear un Pair de Kotlin; por ejemplo la ubicación de una pareja de puntos en un plano 2D:
data class Punto<T>(var x: T, var y: T)
Que pueden ser serializables para que puedas colocar cualquier valor, como enteros o flotantes; podemos emplearlo como pareja como hicimos anteriormente para una pareja de usuario y contraseña, también podemos emplearlo para configurar una URL y un único parámetro:
var url = Pair("https://twitter.com/","ACY291190")
Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter