Lección 17 / 20

La sentencia switch

En esta lección elegirás entre varios casos según el valor de una variable.

switch compara el valor con cada case. Cada rama termina en break, y default recoge los valores que no coinciden con ninguno.

El código de ejemplo traduce un número de día a su nombre.

Dart es más estricto que C o JavaScript en un punto importante: si una rama tiene código y se te olvida el break, no compila. En esos otros lenguajes la ejecución se desliza hacia la rama siguiente en silencio, y ese «fall-through» accidental ha causado errores célebres. Aquí el compilador te obliga a ser explícito.

Desde Dart 3 hay además switch como expresión, con flechas y sin break: final nombre = switch (day) { 1 => 'lunes', ... };. Es más corto y, cuando lo usas sobre un enum, el compilador comprueba que no te has dejado ningún caso sin tratar.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Dart directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

Espacio publicitario (banner)
Espacio publicitario (en el artículo)