Sobes.tech
Junior — Middle

Mají pohledy v Go podobné metody délky a kapacity jako slices?

sobes.tech AI

Odpověď od AI

V jazyce Go nem mají mapy (maps) metody délky a kapacity jako slices. Místo metod pro získání délky se používá vestavěná funkce len(), která vrací počet prvků v mapě.

Pro slices lze použít len() pro aktuální délku a cap() pro kapacitu (maximální velikost bez alokace nové paměti). U map cap() neexistuje, protože dynamicky rostou s přidáváním prvků.

Příklad:

m := make(map[string]int)

m["a"] = 1
fmt.Println(len(m)) // vypíše 1

s := make([]int, 0, 10)
fmt.Println(len(s)) // 0
fmt.Println(cap(s)) // 10