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 23 / 68

Transformar un slice (una operación tipo map)

En esta lección crearás un slice nuevo aplicando un cálculo a cada elemento.

Go no trae una función map de este tipo: se escribe un bucle que recorre el origen y va añadiendo al destino con append().

El código de ejemplo duplica cada valor de un slice.

Que haya que escribirlo a mano es deliberado. La comunidad de Go prefiere el bucle explícito a las cadenas de operaciones, con el argumento de que se lee sin conocer ninguna abstracción y se depura mejor. Es una decisión discutida y muy consistente con el resto del lenguaje.

Un detalle de rendimiento que sí conviene adoptar: reservar la capacidad de antemano con make([]int, 0, len(origen)). Sin eso, append() va ampliando el array subyacente y copiando los datos varias veces. Con listas grandes la diferencia se nota.

📖 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)