Senior
¿Qué puedes contarme sobre map en Go?
sobes.tech AI
Respuesta de la IA
En Go, un mapa es un tipo de dato incorporado que implementa un array asociativo o diccionario, donde las claves se asignan a valores.
Características del mapa en Go:
- Las claves y los valores tienen tipos definidos, por ejemplo,
map[string]int— claves de cadena, valores enteros. - El mapa se inicializa usando la función
make, por ejemplo:m := make(map[string]int). - Acceso a los elementos mediante
m[key]. - Si la clave no existe, se devuelve el valor cero del tipo de valor.
- Se puede verificar la existencia de una clave con el segundo valor de retorno:
val, ok := m[key]. - Los mapas no están ordenados, el orden de recorrido es arbitrario.
- Los mapas no son seguros para concurrencia, para acceso concurrente se debe usar sincronización.
Ejemplo:
package main
import "fmt"
func main() {
m := make(map[string]int)
m["apple"] = 5
m["banana"] = 3
val, ok := m["apple"]
if ok {
fmt.Println("apple:", val)
}
// Eliminar clave
delete(m, "banana")
}