Sobes.tech
Junior — Middle

¿Cuál es la diferencia entre usar un mapa y un slice en Go, y en qué casos es preferible usar cada uno?

sobes.tech AI

Respuesta de la IA

En Go, map y slice sirven para diferentes propósitos:

  • map — matriz asociativa, estructura para almacenar pares clave-valor con acceso rápido por clave. Las claves son únicas.
  • slice — matriz dinámica, colección ordenada de elementos, acceso por índice.

Cuándo usar:

  • Usa map si necesitas encontrar elementos rápidamente por una clave única, por ejemplo, almacenar usuarios por ID.
  • Usa slice si el orden de los elementos es importante, o necesitas almacenar un conjunto de elementos sin claves, por ejemplo, una lista de tareas.

Ejemplo:

// map para almacenar calificaciones de estudiantes por nombre
grades := map[string]int{"Alice": 90, "Bob": 85}

// slice para almacenar una lista de nombres
names := []string{"Alice", "Bob", "Charlie"}

La elección depende de la tarea: para búsqueda por clave — map, para lista ordenada — slice.