¿Hay alguna manera de obtener una lista de todas las claves en un mapa de idioma Go? El número de elementos viene dado por len()
, pero si tengo un mapa como:
m := map[string]string{ "key1":"val1", "key2":"val2" };
¿Cómo itero sobre todas las claves?
loops
dictionary
go
Martin Redmond
fuente
fuente
Aquí hay una manera fácil de obtener
slice
las teclas del mapa.fuente
Keys
función tome un mapa con teclas de cualquier tipo, no solo cadenas?func Keys(m map[interface{}]interface{}) (keys []interface{})
, @ RobertT.McGibbon necesita cambiar la función "prototipo"map[interface{}]interface{}
. Go no admite genéricos. No puede crear una función con unmap
parámetro que acepte mapas con diferentes tipos de clave.Use la respuesta aceptada:
fuente
for _, k := range v.MapKeys()
, ya que en tu ejemplo,k
sería el índice int de la porción de teclas