🔥 MAPAS

¿Qué es un map en Go?

En el lenguaje Go, los mapas son estructuras de datos que permiten almacenar pares de clave y valor, facilitando la búsqueda eficiente de información. A diferencia de los arreglos y slices, donde el acceso se realiza mediante índices numéricos, los mapas utilizan llaves personalizadas. Cómo declarar un map en Go es una de las primeras dudas que surgen al aprender este lenguaje, ya que los mapas también son conocidos como arrays asociativos, diccionarios o hash. Esta flexibilidad los convierte en una herramienta fundamental para resolver problemas donde se requiere asociar información de manera rápida y directa.

Ejemplo práctico de map en Golang

A continuación, se muestra un ejemplo práctico de map en Golang donde se asocian los días de la semana con su respectivo número:

package main

import "fmt"

func main() {
    diasDeLaSemana := make(map[string]int)
    diasDeLaSemana["lunes"] = 1
    diasDeLaSemana["martes"] = 2
    diasDeLaSemana["miércoles"] = 3
    diasDeLaSemana["jueves"] = 4
    diasDeLaSemana["viernes"] = 5
    diasDeLaSemana["sábado"] = 6
    diasDeLaSemana["domingo"] = 7
    fmt.Println(diasDeLaSemana)
}

Explicación del ejemplo

En este ejemplo, se utiliza la función make para crear un mapa donde las llaves son de tipo string y los valores de tipo int. No es necesario definir la dimensión del mapa, lo que otorga gran flexibilidad. Posteriormente, se agregan los valores correspondientes a cada día de la semana. Diferencias entre map y slice en Go radican en que los mapas permiten acceder a los valores mediante una clave personalizada, mientras que los slices solo permiten el acceso por índice numérico.

Para acceder a valores en un map de Go, simplemente se utiliza la clave entre corchetes:

fmt.Println(diasDeLaSemana["lunes"]) // 1

Esta característica hace que los mapas sean ideales para situaciones donde se requiere una búsqueda rápida y eficiente de datos asociados. Entre las ventajas de usar mapas en programación Go destacan la facilidad para almacenar y recuperar información sin importar el orden, y la posibilidad de trabajar con grandes volúmenes de datos de manera eficiente.


Conclusión

Los mapas en Go son una estructura poderosa y versátil que permite asociar claves y valores de forma eficiente. Su sintaxis sencilla y su flexibilidad los convierten en una herramienta esencial para cualquier desarrollador que busque optimizar la gestión de datos en sus programas.


Cuestionario de repaso

  • ¿Qué es un map en Go y para qué se utiliza?
  • ¿Cómo se declara un map en Go?
  • ¿Cuál es la diferencia principal entre un map y un slice en Go?
  • ¿Cómo se accede a un valor almacenado en un map?
  • Menciona dos ventajas de usar mapas en programación con Go.