Si je veux compter les éléments dans la structure de la carte, quelle instruction dois-je utiliser? J'ai essayé d'utiliser
for _, _ := range m {...}
mais il semble que la syntaxe est fausse.
Utilisez len(m)
. De http://golang.org/ref/spec#Length_and_capacity
len(s) string type string length in bytes
[n]T, *[n]T array length (== n)
[]T slice length
map[K]T map length (number of defined keys)
chan T number of elements queued in channel buffer
Voici quelques exemples portés de la documentation SO) maintenant retirée:
m := map[string]int{}
len(m) // 0
m["foo"] = 1
len(m) // 1
Si une variable pointe sur une carte nil
, alors len
renvoie 0.
var m map[string]int
len(m) // 0
Extrait de Maps - Counting map elements . L'auteur original était Simone Carletti . Les détails d'attribution peuvent être trouvés sur le page contributeur . La source est sous licence CC BY-SA 3. et se trouve dans Archive de la documentation . Sujet de référence ID: 732 et exemple ID: 2528.