0Pricing
Swift Academy · Lección

Control de bucles en el contexto de switch

Distinga break en bucles de break en instrucciones switch.

Control de bucles en el contexto de switch 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.

break en switch

Dentro de un switch, break termina el caso del switch. Los casos de Swift no continúan implícitamente, por lo que break suele ser opcional, aunque está permitido.

let n = 2
switch n {
case 1:
    print("one")
case 2:
    print("two")
    break
default:
    print("other")
}

Caso vacío con break

Use break para indicar explícitamente que un caso no hace nada; es más claro que dejar el cuerpo vacío.

let code = 0
switch code {
case 0:
    break // intentionally ignore
default:
    print("handled", code)
}
print("after switch")

break en un switch dentro de un bucle

Cuando hay un switch dentro de un bucle, un break normal sale del switch, no del bucle.

for n in 1...4 {
    switch n {
    case 3:
        break // exits switch only
    default:
        print(n)
    }
}
print("loop finished")

Salir del bucle desde un switch

Para salir del bucle que contiene el switch desde dentro de este, etiquete el bucle y use break label.

loop: for n in 1...5 {
    switch n {
    case 3:
        break loop
    default:
        print(n)
    }
}
print("done")

continue desde un switch

Un continue normal dentro de un switch se refiere al bucle que lo contiene y pasa a su siguiente iteración.

for n in 1...5 {
    switch n {
    case let x where x % 2 == 0:
        continue
    default:
        print(n)
    }
}

Por qué importa la distinción

Confundir el break del switch con el break del bucle es un error común. Recuerde: un break sin etiqueta dentro de un switch solo sale del switch.

for n in 1...3 {
    switch n {
    case 2:
        break
    default:
        print("value", n)
    }
}
print("all values processed")

fallthrough

Si realmente quiere un comportamiento de continuación implícita, use la palabra clave explícita fallthrough.

let n = 1
switch n {
case 1:
    print("one")
    fallthrough
case 2:
    print("two")
default:
    print("done")
}

break con etiqueta para mayor claridad

Aunque no sea estrictamente necesario, un break con etiqueta documenta que se refiere al bucle.

scan: for value in [10, 20, 30, 40] {
    switch value {
    case 30:
        break scan
    default:
        print(value)
    }
}

Combinar cláusulas where

Las cláusulas de patrón where junto con continue permiten filtrar de forma elegante dentro de un switch.

for n in 1...6 {
    switch n {
    case let x where x > 4:
        continue
    default:
        print(n)
    }
}

Switch y bucle anidados

Con bucles anidados y un switch, las etiquetas hacen que el destino no sea ambiguo.

outer: for i in 1...3 {
    for j in 1...3 {
        switch j {
        case 2:
            break outer
        default:
            print(i, j)
        }
    }
}

Práctica recomendada

Use un break sin etiqueta solo para salir de un caso del switch; etiquete siempre el bucle cuando pretenda salir de él desde dentro de un switch.

main: for n in 1...5 {
    switch n {
    case 4:
        break main
    default:
        print(n)
    }
}

Comprobación rápida

Compruebe la diferencia entre el break del switch y el del bucle.

Repaso

En un switch, un break sin etiqueta solo sale del caso del switch (Swift no tiene continuación implícita; use fallthrough para conseguirla). Para salir de un bucle que contiene el switch desde dentro de este, etiquete el bucle y use break label. Un continue sin etiqueta sigue refiriéndose al bucle.

loop: for n in 1...4 {
    switch n {
    case 3: break loop
    default: print(n)
    }
}

Preguntas frecuentes

¿La lección «Control de bucles en el contexto de switch» es gratis?

Sí — el texto completo de «Control de bucles en el contexto de switch» 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 «Control de bucles en el contexto de switch»?

Distinga break en bucles de break en instrucciones switch. 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 «Control de bucles en el contexto de switch»?

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

  1. Fundamentos de break y continue
  2. Instrucciones etiquetadas
  3. Salir de bucles anidados
  4. Control de bucles en el contexto de switch
← Volver a Swift Academy