Junior — Middle
Имат ли изгледите в Go подобни методи за дължина и капацитет като срезовете?
sobes.tech AI
Отговор от AI
В Go, отображенията (maps) нямат методи за дължина и капацитет като slices. Вместо методи за получаване на дължина, се използва вградената функция len(), която връща броя на елементите в отображението.
За slices, може да се използва len() за текущата дължина и cap() за капацитета (максималния размер без ново разпределение на паметта). При отображенията cap() не съществува, тъй като те растат динамично с добавянето на елементи.
Пример:
m := make(map[string]int)
m["a"] = 1
fmt.Println(len(m)) // показва 1
s := make([]int, 0, 10)
fmt.Println(len(s)) // 0
fmt.Println(cap(s)) // 10