Sobes.tech
Junior — Middle

Kam gali būti naudojama reikšmė žemėlapyje, jei svarbios tik raktai?

sobes.tech AI

Atsakymas iš AI

Go kalboje, jei svarbūs tik žemėlapio raktai, reikšmė (value) gali būti tuščia struktūra struct{}. Tai padeda taupyti atmintį, nes tuščia struktūra neužima vietos. Šis požiūris dažnai naudojamas rinkiniai (set) įgyvendinti, kur svarbu tik raktų buvimas.

Pavyzdys:

set := make(map[string]struct{})
set["obuolys"] = struct{}{}
set["bananas"] = struct{}{}

// Raktų buvimo patikrinimas
if _, exists := set["obuolys"]; exists {
    fmt.Println("obuolys yra rinkinyje")
}

Taip, reikšmė tarnauja kaip žymeklis, nurodantis raktų buvimą, be papildomos atminties apkrovos.