Variables y tipos de datos básicos en Kotlin

Clase 4 de 35Curso de Kotlin

Resumen

Dominar las variables y tipos de datos en Kotlin es fundamental para programar con confianza y claridad. Aquí conocerás cómo gestionarlas, diferenciando entre mutabilidad e inmutabilidad y accediendo a los tipos más usados en esta herramienta. Todo enmarcado en ejemplos reales y ejercicios útiles que ayudan a comprender cada detalle.

¿Qué es una variable y cómo se declara en Kotlin?

Las variables son espacios en memoria destinados a almacenar datos específicos como textos, números enteros o decimales. En Kotlin, puedes crear variables usando dos palabras reservadas: val y var.

  • val define una variable inmutable; su valor no puede cambiar una vez asignado.
  • var permite cambiar el valor de la variable después de su declaración, es decir, es mutable.

¿Cómo se diferencian val y var en su uso práctico?

Cuando declaras una variable con val nombreUsuario = "Juan", cualquier intento de reasignarle un nuevo valor genera un error: val no puede ser reasignado. Esto garantiza que ese dato permanecerá fijo mientras viva el programa.

Por otro lado, declarar var nombreUsuario2 = "Carlos" sí permite actualizar su valor, por ejemplo: nombreUsuario2 = "Pablo". Imprimiendo el contenido con println(nombreUsuario2) observarás el valor actual.

¿Qué tipos de datos básicos existen en Kotlin y para qué sirve cada uno?

Kotlin incorpora varios tipos de datos básicos que puedes usar en contextos habituales:

  • String: para textos, como val asunto = "Reunión".
  • Int: para números enteros, usados con cantidades, ejem: var emailsNoLeidos = 5.
  • Float: para decimales, ideal para porcentajes, así: val porcentaje = 75.5F.
  • Boolean: para guardar valores lógicos true o false, ejem: val urgente = true.
  • Double y Long: almacenan números de mayor tamaño, con más capacidad que Int y Float.

Puedes especificar explícitamente el tipo de dato colocando : seguido del tipo. Por ejemplo:

val totalEmails: Int = 150
val porcentaje2: Float = 99.9F

Cuando no lo indicas, Kotlin lo infiere según el valor inicial.

¿Cómo se convierte un tipo de dato en otro y cuándo hacerlo?

Existen situaciones donde es necesario transformar tipos de variables, como convertir un número a texto o viceversa, para operar correctamente:

  • Para pasar de número a texto: numero.toString()
  • Para convertir texto a entero: textoNumero.toInt()

Esta conversión resulta útil para cálculos matemáticos con datos ingresados como texto, por ejemplo en una calculadora.

¿Cómo realizar operaciones matemáticas y qué precauciones tomar con los tipos?

Al ejecutar divisiones entre enteros, el resultado será otro entero; es decir, se eliminará cualquier parte decimal. Por ejemplo, 15 dividido entre 20 da 0 en vez de 0.75. Si uno de los valores es Float, obtendrás el decimal esperado, como al calcular porcentajes.

Usa paréntesis para establecer prioridades, igual que en una calculadora:

val porcentajeEnviados = (enviados.toFloat() / (recibidos + enviados)) * 100

¿Qué ejercicios prácticos ayudan a consolidar el manejo de variables y tipos?

Un buen ejercicio es crear:

  1. Una variable inmutable llamada nombre.
  2. Dos mutables: recibidos y enviados.
  3. Calcular el porcentaje de emails enviados sobre el total.

Luego, imprime el resultado con println usando la concatenación y templates de Kotlin:

val nombre = "María"
var recibidos = 60
var enviados = 40
val porcentajeEnviados = (enviados.toFloat() / (recibidos + enviados)) * 100
println("$nombre tiene enviados ${porcentajeEnviados.toInt()}% de sus correos.")

¿Has realizado ejercicios similares? ¡Cuéntanos tu experiencia y comparte tus dudas para seguir aprendiendo juntos!