Junior — Middle
Каким образом обрабатывать ситуации, когда Map еще не была инициализирована?
sobes.tech AI
Απάντηση από AI
Στη γλώσσα Go, πριν χρησιμοποιήσετε ένα map, πρέπει να το αρχικοποιήσετε, διαφορετικά η προσπάθεια εγγραφής θα οδηγήσει σε panic (runtime panic). Για να διαχειριστείτε την κατάσταση όπου το map δεν έχει ακόμη αρχικοποιηθεί (δηλαδή, είναι nil), μπορείτε:
- Να ελέγξετε αν το
mapέχει αρχικοποιηθεί πριν το χρησιμοποιήσετε:
var m map[string]int
if m == nil {
m = make(map[string]int)
}
m["key"] = 42
- Ή να αρχικοποιήσετε το
mapαμέσως κατά την δήλωση:
m := make(map[string]int)
m["key"] = 42
Έτσι, πρέπει πάντα να διασφαλίζετε ότι το map δεν είναι nil πριν γράψετε σε αυτό.