Junior — Middle
Czy widoki w Go mają metody długości i pojemności podobne do slices?
sobes.tech AI
Odpowiedź od AI
W Go mapy (słowniki) nie mają metod długości i pojemności, tak jak slices. Zamiast metod do pobierania długości, używa się wbudowanej funkcji len(), która zwraca liczbę elementów w mapie.
Dla slices można używać len() do aktualnej długości i cap() do pojemności (maksymalnego rozmiaru bez alokacji nowej pamięci). W mapach cap() nie istnieje, ponieważ rosną one dynamicznie wraz z dodawaniem elementów.
Przykład:
m := make(map[string]int)
m["a"] = 1
fmt.Println(len(m)) // wyświetla 1
s := make([]int, 0, 10)
fmt.Println(len(s)) // 0
fmt.Println(cap(s)) // 10