Kotlin, diseñado para ser completamente interoperable con Java, trae su propia colección de tipos de datos que mejoran la legibilidad y eficiencia del código.
Este artículo se centra en los tipos de datos fundamentales en Kotlin, proporcionando una visión clara sobre cómo se utilizan, junto con ejemplos de código.
Tipos de datos básicos
Kotlin maneja los tipos de datos básicos de manera un poco diferente a Java, tratando todo como objetos pero sin comprometer el rendimiento.
Números
Kotlin soporta los siguientes tipos numéricos
- Int
- Long
- Byte
- Short
- Float
- Double
A diferencia de Java, no hay distinción entre tipos primitivos y tipos envoltorios.
val anInt: Int = 5
val aLong: Long = 200L
val aShort: Short = 10
val aByte: Byte = 1
val aFloat: Float = 3.14F
val aDouble: Double = 3.14159
Caracteres
Se utilizan para almacenar caracteres y se declaran con el tipo Char.
val aChar: Char = 'A'
Booleanos
Representan valores de verdad y pueden ser true o false.
val aBoolean: Boolean = true
Strings
Las cadenas en Kotlin son inmutables, lo que significa que una vez creadas, su contenido no puede ser cambiado.
Kotlin proporciona todas las capacidades comunes de manipulación de cadenas, además de algunas adicionales como interpolación de strings y procesamiento multilínea.
val aString: String = "Hello, Kotlin!"
val multilineString: String = """
This is a string
that spans multiple
lines.
"""
println(aString)
println(multilineString)
Arrays
Los arrays en Kotlin se representan por la clase Array, que tiene funciones útiles que facilitan el manejo de colecciones de datos.
Se pueden crear utilizando la función arrayOf o especificando el tamaño y una función inicializadora.
val numbers: Array<Int> = arrayOf(1, 2, 3, 4, 5)
val squares = Array(5) { i -> (i + 1) * (i + 1) }
println(numbers.joinToString()) // Output: 1, 2, 3, 4, 5
println(squares.joinToString()) // Output: 1, 4, 9, 16, 25
Colecciones
Kotlin distingue entre colecciones mutables e inmutables para prevenir errores en tiempo de ejecución y mejorar la legibilidad.
Listas, Conjuntos y Mapas: Puedes elegir entre versiones mutables e inmutables
val immutableList: List<Int> = listOf(1, 2, 3)
val mutableList: MutableList<Int> = mutableListOf(1, 2, 3)
val immutableMap: Map<Int, String> = mapOf(1 to "One", 2 to "Two")
val mutableMap: MutableMap<Int, String> = mutableMapOf(1 to "One", 2 to "Two")
println(immutableList)
println(mutableList)
println(immutableMap)
println(mutableMap)
Kotlin simplifica la gestión de tipos de datos en comparación con Java, ofreciendo una sintaxis más clara y segura.
A través de la inmutabilidad y la claridad en la manipulación de colecciones, Kotlin facilita la escritura de código más limpio y menos propenso a errores.
Al dominar estos tipos de datos, los desarrolladores pueden implementar lógicas más complejas y eficientes en sus aplicaciones.