Junior — Middle
Ποιες χαρακτηριστικές ιδιότητες πρέπει να έχουν τα κλειδιά σε μια δομή δεδομένων map;
sobes.tech AI
Απάντηση από AI
Στη Go, τα κλειδιά σε ένα χάρτη πρέπει να είναι συγκρίσιμα (comparable) τύποι, δηλαδή τύποι που μπορούν να χρησιμοποιηθούν με τους τελεστές σύγκρισης == και !=. Αυτό είναι απαραίτητο ώστε ο χάρτης να μπορεί να αναζητά και να συγκρίνει αποτελεσματικά τα κλειδιά.
Τύποι που μπορούν να χρησιμοποιηθούν ως κλειδιά:
- Απλοί τύποι: συμβολοσειρές, αριθμοί, boolean τιμές.
- Δείκτες.
- Δομές, αν όλα τα πεδία τους είναι συγκρίσιμα.
Τύποι που δεν μπορούν να χρησιμοποιηθούν ως κλειδιά:
- Λωρίδες (slice), χάρτες (map), συναρτήσεις (func), καθώς δεν είναι συγκρίσιμα.
Παράδειγμα:
m := make(map[string]int)
m["key"] = 42
Εδώ, το κλειδί είναι μια συμβολοσειρά, που είναι σωστό.