Junior
Kako pravilno deklarisati mapu (map) u Go?
sobes.tech АИ
Одговор од АИ
Karta se može deklarisati na više načina:
-
Koristeći
var:// deklaracija karte bez inicijalizacije // vrednost nil var myMap map[string]int -
Koristeći
make:// deklaracija i inicijalizacija prazne karte myMap := make(map[string]int) // deklaracija i inicijalizacija karte sa zadatom kapacitetom // može poboljšati performanse kod velikog broja elemenata myMapWithCapacity := make(map[string]int, 100) -
Koristeći literale:
// deklaracija i inicijalizacija sa početnim vrednostima myMapWithValues := map[string]int{ "ključ1": 1, "ključ2": 2, } // deklaracija i inicijalizacija prazne karte // ekvivalentno make(map[string]int) emptyMapLiteral := map[string]int{}
Razlike između metoda:
| Metod | Podrazumevana inicijalizacija | Dodeljena kapacitet | Dodavanje početnih vrednosti |
|---|---|---|---|
var |
nil |
Ne | Ne |
make |
Prazna mapa | Da | Ne |
Literal {} |
Prazna mapa | Ne | Da |
Važno je zapamtiti da mapa deklarisana pomoću var bez inicijalizacije (nil) ne može biti korišćena za dodavanje ili pristup elementima. Ova operacija će izazvati paniku. Potrebno je inicijalizovati je pomoću make ili literala.