Junior — Middle
Ποιοι τύποι κλειδιών επιτρέπονται για χρήση στη δομή δεδομένων Map;
sobes.tech AI
Απάντηση από AI
Στα Go, τα κλειδιά για τη δομή δεδομένων map πρέπει να είναι συγκρίσιμα (comparable) τύποι, δηλαδή τύποι που μπορούν να χρησιμοποιηθούν σε λειτουργίες σύγκρισης == και !=.
Οι επιτρεπτοί τύποι κλειδιών περιλαμβάνουν:
- Βασικούς τύπους:
int,float64,string,boolκ.ά. - Δείκτες
- Δομές, αν όλα τα πεδία τους είναι συγκρίσιμα
- Πίνακες, αν τα στοιχεία του πίνακα είναι συγκρίσιμα
Μη επιτρεπτοί τύποι κλειδιών:
- Λωρίδες (
slice) - Χάρτες (
map) - Συναρτήσεις
Παράδειγμα χρήσης ενός χάρτη με κλειδί τύπου string:
m := make(map[string]int)
m["apple"] = 5
fmt.Println(m["apple"]) // 5
Αν προσπαθήσετε να χρησιμοποιήσετε μια λωρίδα ως κλειδί, ο μεταγλωττιστής θα εμφανίσει σφάλμα.