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.