Sobes.tech
Junior — Middle

Πώς μπορεί κανείς να εργαστεί με ένα Map όταν χρησιμοποιεί μόνο κλειδιά, χωρίς να αποθηκεύει τιμές;

sobes.tech AI

Απάντηση από AI

Στο Go, αν χρειάζεται να χρησιμοποιήσεις ένα Map μόνο για την αποθήκευση κλειδιών χωρίς τιμές, συνήθως χρησιμοποιείται ένα Map με τον τύπο τιμής struct{} — μια κενή δομή που δεν καταλαμβάνει μνήμη.

Παράδειγμα:

keys := make(map[string]struct{})

// Προσθήκη κλειδιού
keys["κλειδί1"] = struct{}{}

// Έλεγχος αν το κλειδί υπάρχει
if _, exists := keys["κλειδί1"]; exists {
    fmt.Println("Βρέθηκε το κλειδί")
}

// Διαγραφή κλειδιού
delete(keys, "κλειδί1")

Αυτή η προσέγγιση είναι αποδοτική και συχνά χρησιμοποιείται για την υλοποίηση συνόλων (set) σε Go.