Sobes.tech
Senior

¿Cómo funcionan los mapas en Go?

sobes.tech AI

Respuesta de la IA

En Go, map es un tipo de dato incorporado que implementa un array asociativo o diccionario, donde las claves se asignan a valores.

Características principales:

  • Declaración: map[keyType]valueType.
  • Inicialización: mediante la función make o un literal.
  • Acceso: lectura y escritura por clave.
  • Ausencia de orden: los elementos en map no están ordenados.
  • Seguridad en concurrencia: map no es seguro para acceso concurrente, requiere sincronización.

Ejemplo:

package main
import "fmt"

func main() {
    // Crear un map con claves de tipo string y valores de tipo int
    ages := make(map[string]int)

    // Añadir elementos
    ages["Alice"] = 30
    ages["Bob"] = 25

    // Leer un elemento
    fmt.Println("Edad de Alice:", ages["Alice"])

    // Comprobar si existe una clave
    age, ok := ages["Charlie"]
    if !ok {
        fmt.Println("Clave Charlie no encontrada")
    } else {
        fmt.Println("Edad de Charlie:", age)
    }
}

Por lo tanto, map en Go es una forma conveniente y eficiente de almacenar pares clave-valor con acceso rápido.