Sobes.tech
Junior — Middle

Mit lehet kezdeni az értékkel egy térképen, ha csak a kulcsok számítanak?

sobes.tech MI

Válasz az MI-től

Go nyelven, ha csak a térképen lévő kulcsok számítanak, az érték (value) üres struktúra struct{} lehet. Ez memóriát takarít meg, mivel az üres struktúra helyet nem foglal. Ezt a megközelítést gyakran használják halmazok (set) megvalósítására, ahol csak a kulcs létezése számít.

Példa:

set := make(map[string]struct{})
set["alma"] = struct{}{}
set["banán"] = struct{}{}

// Kulcs létezésének ellenőrzése
if _, exists := set["alma"]; exists {
    fmt.Println("az alma a halmazban van")
}

Így a érték csak egy jelzőként szolgál a kulcs jelenlétére anélkül, hogy további memória terhelést okozna.