AD

¿Ya dominas lo básico? Un curso estructurado de Go es la vía rápida para dar el salto.

Ver cursos de Go en Udemy

Enlace de afiliado. No te cuesta nada extra.

🐹Lecciones de Go
Lección 41 / 68

Enumerados con iota

En esta lección darás nombre a un conjunto de valores relacionados.

Go no tiene enum. Se declara un tipo propio y un bloque const con iota, que se autoincrementa: el primer caso vale 0, el siguiente 1, y así.

El código de ejemplo define unos estados y muestra el que corresponde.

Definir un tipo propio (type Estado int) en lugar de usar int a secas es lo que aporta seguridad: el compilador impide pasar un número cualquiera donde se espera un Estado.

El límite que hay que conocer: por debajo sigue siendo un número, así que Estado(99) se acepta aunque no corresponda a ningún caso, y el compilador no avisa si un switch deja casos sin tratar. La costumbre es añadir un método String() para mostrarlos, y validar los valores que vengan de fuera.

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

🧪 Este sitio no puede compilar ni ejecutar Go 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).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

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