Casos compuestos y fallthrough
Combine casos y utilice fallthrough de forma intencionada.
Casos compuestos y fallthrough es una lección gratuita de Swift Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Swift Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Swift Academy incluye 4 lecciones en total.
Casos compuestos
Un solo caso puede coincidir con varios valores separándolos con comas: case "a", "b":. Todos los valores indicados ejecutan el mismo código.
let letter = "a"
switch letter {
case "a", "e", "i", "o", "u":
print("Vowel")
default:
print("Consonant")
}Por qué usar casos compuestos
Los casos compuestos evitan duplicar cuerpos idénticos. Agrupan los valores que deben comportarse de la misma manera.
let day = 6
switch day {
case 6, 7:
print("Weekend")
case 1, 2, 3, 4, 5:
print("Weekday")
default:
print("Invalid day")
}Casos compuestos con rangos
Puede combinar rangos y valores individuales dentro de un mismo caso compuesto.
let code = 204
switch code {
case 200, 201, 204:
print("Success")
case 400...499:
print("Client error")
default:
print("Other")
}Casos compuestos y vinculaciones
Al vincular valores en un caso compuesto, cada alternativa debe vincular los mismos nombres con los mismos tipos.
let point = (0, 5)
switch point {
case (let v, 0), (0, let v):
print("On an axis at distance \(v)")
default:
print("Off the axes")
}Introducción a fallthrough
Los casos de Swift no pasan al siguiente de forma predeterminada. La palabra clave fallthrough fuerza la continuación de la ejecución en el caso siguiente.
let n = 1
switch n {
case 1:
print("one")
fallthrough
case 2:
print("two")
default:
print("done")
}Cómo funciona fallthrough
fallthrough pasa incondicionalmente al cuerpo del caso siguiente; no vuelve a comprobar la condición de ese caso. Úselo deliberadamente.
let level = 3
switch level {
case 3:
print("Level 3 perks")
fallthrough
case 2:
print("Level 2 perks")
fallthrough
case 1:
print("Level 1 perks")
default:
break
}fallthrough ignora los patrones
Como fallthrough omite la comprobación del patrón siguiente, ese caso no debe depender de la vinculación de un valor, ya que el código no compilaría.
let x = 10
switch x {
case 10:
print("ten")
fallthrough
default:
print("reached default")
}Casos compuestos frente a fallthrough
Para ejecutar el mismo código con varios valores, prefiera un caso compuesto. Reserve fallthrough para comportamientos realmente encadenados.
let grade = "B"
switch grade {
case "A", "B":
print("Passing")
default:
print("Other")
}Acumular con fallthrough
Fallthrough resulta útil para efectos acumulativos, como enumerar todos los beneficios desde un nivel hasta los inferiores.
let tier = 2
var perks = [String]()
switch tier {
case 2:
perks.append("Premium")
fallthrough
case 1:
perks.append("Basic")
default:
break
}
print(perks)Combinar ambos
Puede usar casos compuestos y fallthrough en el mismo switch, según corresponda en cada situación.
let n = 0
switch n {
case 0:
print("zero")
fallthrough
case 1, 2:
print("small")
default:
print("large")
}Nota sobre la legibilidad
Fallthrough puede sorprender a quienes leen el código, ya que la mayoría de los lenguajes lo incluyen de forma predeterminada. Comente su intención o prefiera los casos compuestos cuando sea posible.
let status = "warn"
switch status {
case "warn", "error":
print("Needs attention")
default:
print("OK")
}Comprobación rápida
Pruebe los casos compuestos y fallthrough.
Repaso: casos compuestos y fallthrough
Use casos compuestos separados por comas para compartir un mismo cuerpo entre varios valores. Use la palabra clave explícita fallthrough solo cuando quiera que la ejecución continúe intencionadamente en el caso siguiente.
let n = 2
switch n {
case 1, 2: print("small")
default: print("big")
}Preguntas frecuentes
¿La lección «Casos compuestos y fallthrough» es gratis?
Sí — el texto completo de «Casos compuestos y fallthrough» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Swift Academy, actualiza a CoddyKit PRO. El curso de Swift Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Casos compuestos y fallthrough»?
Combine casos y utilice fallthrough de forma intencionada. Practicas Swift Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Swift Academy?
No se requiere experiencia previa. Swift Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.
¿Cuánto tiempo toma la lección «Casos compuestos y fallthrough»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Swift Academy?
Sí. Cada lección de Swift Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Switch exhaustivo sobre valores
- Comparación de rangos y tuplas
- Vinculación de valores y cláusulas where
- Casos compuestos y fallthrough