Sobes.tech
Junior — Middle

Da li pogledi u Go imaju metode dužine i kapaciteta slične onima kod slice-ova?

sobes.tech АИ

Одговор од АИ

У Go, mape (maps) nemaju metode za dužinu i kapacitet kao slices. Umesto metoda za dobijanje dužine, koristi se ugrađena funkcija len(), koja vraća broj elemenata u mapi.

Za slices, može se koristiti len() za trenutnu dužinu i cap() za kapacitet (maksimalnu veličinu bez alociranja nove memorije). Kod mapa, cap() ne postoji, jer one dinamički rastu dodavanjem elemenata.

Primer:

m := make(map[string]int)

m["a"] = 1
fmt.Println(len(m)) // prikazuje 1

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