- 1

Fundamentos de Kotlin: Variables, funciones y estructuras de datos
01:47 - 2

Instalación y configuración de IntelliJ IDEA para Kotlin
11:16 - 3

Creación de proyecto Kotlin en IntelliJ y primer programa
13:47 - 4

Variables y tipos de datos básicos en Kotlin
20:58 - 5

Operadores aritméticos y módulo en Kotlin
14:28 - 6

Operadores lógicos AND, OR y NOT en programación
20:51 - 7

Manejo de valores nulos y operadores seguros en Kotlin
12:30 - 8

Lectura de datos por consola con readLine() en Kotlin
14:49 quiz de Fundamentos de Kotlin
Estructura when de Kotlin para múltiples condiciones
Clase 11 de 35 • Curso de Kotlin
Contenido del curso
- 9

Creación de funciones en Kotlin para organizar código
20:21 - 10

Condicionales en Kotlin: if/else
17:14 - 11

Estructura when de Kotlin para múltiples condiciones
17:44 - 12

Arrays y listas mutables en Kotlin: creación y manipulación
18:19 - 13

Listas inmutables y mutables en Kotlin
10:13 - 14

Ciclos for, while y do while en Kotlin para iterar colecciones
18:57 quiz de Contro de Flujo y Funciones
- 15

Creación de clases y objetos en Kotlin
17:05 - 16

Getters y setters en Kotlin: validación y propiedades calculadas
14:38 - 17

Dataclases en Kotlin: ventajas sobre clases normales
16:46 - 18

Enums en Kotlin: Constantes organizadas para casos específicos
20:33 - 19

Manejo de excepciones con Try Catch Finally en Kotlin
19:40 quiz de Programación Orientada a Objetos en Kotlin
- 20

Extension functions en Kotlin para ampliar clases existentes
18:14 - 21

Funciones de alto orden y lambdas en Kotlin
22:37 - 22

Uso de lambdas y funciones de alto orden en arrays y colecciones
10:05 - 23

Scope functions de Kotlin: let, apply y run para manipular objetos
15:30 - 24

Funciones with y also en Kotlin para operaciones múltiples
11:09 - 25

Modificadores de visibilidad y encapsulamiento en Kotlin
17:06 - 26

Interfaces y patrón repository en Kotlin para gestión de datos
20:00 quiz de Características Avanzadas de Kotlin
- 31

Creación de modelos y repositorios para simulador de emails en Kotlin
22:57 - 32

Creación de clase service para coordinar repositorios en Kotlin
18:19 - 33

Implementación de funciones avanzadas del servicio Inbox en Kotlin
21:19 - 34

Interfaz por consola para gestión de correos en Kotlin
16:50 - 35

Pruebas de funcionalidades de correo en Kotlin
07:32
La sentencia when en Kotlin ofrece una manera eficiente y fácilmente legible de gestionar múltiples condiciones en tus programas. Para estructuras con más de dos condiciones, utilizar when en lugar de if-else anidados mejora la claridad del código y facilita su mantenimiento.
¿Qué es y cómo funciona la sentencia when en Kotlin?
La estructura when permite evaluar diferentes casos y ejecutar acciones según corresponda. Cada caso se evalúa en el orden establecido, asociando una condición con la acción a realizar mediante una flecha ->. Al igual que otras estructuras de control, soporta la ejecución múltiple con llaves {} si hay varias acciones implicadas.
Por ejemplo, al evaluar correos de usuarios:
- Si contiene "admin", lo clasifica como administrador.
- Si contiene "support", lo clasifica como soporte.
- En otros casos, lo clasifica como usuario normal.
when {
email.contains("admin") -> println("administrador")
email.contains("support") -> println("soporte")
else -> println("usuario normal")
}
¿En qué situaciones conviene utilizar la sentencia when?
Se recomienda emplear when especialmente en estos casos:
- Al manejar más de tres condiciones claramente diferenciadas.
- Cuando cada condición lleva asociada una secuencia de comandos específicos.
La estructura queda mucho más organizada que múltiples if-else, facilitando su comprensión y modificaciones posteriores.
¿Cómo asignar valores con la estructura when?
Al igual que la estructura if-else, la estructura when permite asignar directamente valores según una condición. La última instrucción ejecutada dentro del bloque del when determina el valor retornado hacia una variable.
val tipoUsuario = when {
email.contains("admin") -> "administrador"
email.contains("support") -> "soporte"
else -> "usuario normal"
}
En el ejemplo anterior, Kotlin infiere automáticamente que el tipo de dato asignado es String.
¿Qué ocurre al pasar argumentos en el when?
Al pasar una variable o argumento al when, se evalúa sobre la base del valor especificado, comparando lo recibido con diferentes casos enumerados:
val proveedor = readLine()
when (proveedor) {
"Gmail" -> println("Google Mail")
"Yahoo" -> println("Yahoo Mail")
"Outlook" -> println("Microsoft Outlook")
else -> println("Otro proveedor")
}
Esto simplifica comparaciones y visualización específica a valores puntuales.
¿Cómo agrupar condiciones en when?
Kotlin permite agrupar varias condiciones en un mismo caso del when usando operadores lógicos:
val resultado = when {
email.contains("@") && email.contains(".com") && email.contains("Gmail") -> "correo válido del proveedor Gmail"
email.contains("@") && email.contains(".com") -> "correo válido"
else -> "correo no válido"
}
Ejercicio práctico: evaluar la fortaleza de una contraseña
Para reforzar lo aprendido, practica evaluando contraseñas según su longitud usando when. Clasifica como:
- "Fuerte", si es mayor o igual a 8 caracteres.
- "Media", si es mayor o igual a 6 caracteres.
- "Débil", en todos los demás casos.
fun evaluarPassword(password: String): String =
when {
password.length >= 8 -> "fuerte"
password.length >= 6 -> "media"
else -> "débil"
}
Recuerda probar esta función ejecutando tu programa y proporcionando diferentes longitudes de contraseña.