Πώς να εκχωρήσετε προεπιλεγμένες τιμές για πεδία δομής στο Golang;

Pos Na Ekchoresete Proepilegmenes Times Gia Pedia Domes Sto Golang



Η Golang είναι μια σύγχρονη γλώσσα προγραμματισμού που έχει αποκτήσει δημοτικότητα τα τελευταία χρόνια. Ένα από τα ισχυρά χαρακτηριστικά του Golang είναι η ικανότητά του να ορίζει και να χειρίζεται δομές. Κατασκευές είναι τύποι δεδομένων που καθορίζονται από το χρήστη που επιτρέπουν στους προγραμματιστές να ομαδοποιούν τα σχετικά πεδία δεδομένων σε ένα ενιαίο αντικείμενο. In Go, κατασκευές μπορώ να έχω προεπιλεγμένες τιμές εκχωρούνται στα πεδία τους, γεγονός που καθιστά την αρχικοποίησή τους πολύ πιο εύκολη.

Σε αυτό το δοκίμιο, θα διερευνήσουμε πώς να εκχωρήσουμε ένα Προεπιλεγμένη τιμή για ένα πεδίο κατασκευής στο Golang.

Τι είναι τα δομικά πεδία;

Πρώτον, είναι απαραίτητο να κατανοήσουμε την έννοια του κατασκευή πεδίων . ο κατασκευή πεδίων είναι μεταβλητές που ομαδοποιούνται για να σχηματίσουν α struct αντικείμενο. Καθε πεδίο κατασκευής έχει όνομα και τύπο δεδομένων. Για παράδειγμα, μια δομή που αντιπροσωπεύει ένα άτομο μπορεί να έχει πεδία όπως όνομα, ηλικία και φύλο.







Πώς να εκχωρήσετε προεπιλεγμένες τιμές για πεδία δομών στο Golang;

Προεπιλεγμένες τιμές μπορεί να εκχωρηθεί για πεδία δομής στο Go χρησιμοποιώντας:



  • Προεπιλεγμένες μηδενικές τιμές
  • Κατασκευαστές
  • Struct Literals
  • Προεπιλεγμένες τιμές πεδίου

1: Προεπιλεγμένες μηδενικές τιμές

Στο Go, η εκχώρηση προεπιλεγμένων τιμών στα πεδία δομής μπορεί να επιτευχθεί με το ' μηδενική τιμή ' χαρακτηριστικό. Αυτή η δυνατότητα εκχωρεί αυτόματα μια προεπιλεγμένη τιμή είτε ' 0 ' ή ' ψευδής ” σε κάθε μη αρχικοποιημένο πεδίο, ανάλογα με τον τύπο δεδομένων. Αυτό σημαίνει ότι δεν χρειάζεται να ορίσετε ρητά προεπιλεγμένες τιμές για κάθε πεδίο στη δομή, καθώς το Go θα το κάνει για εσάς.



Αυτή η δυνατότητα μπορεί να σας φανεί χρήσιμη όταν αντιμετωπίζετε μεγάλες δομές με πολλά πεδία, καθώς εξοικονομεί χρόνο και προσπάθεια μη αυτόματης ρύθμισης προεπιλεγμένων τιμών για κάθε πεδίο.





Ακολουθεί ένα παράδειγμα που χρησιμοποιεί τη μηδενική τιμή για να εκχωρήσει προεπιλεγμένες τιμές για πεδία δομής:

κύριο πακέτο

εισαγωγή 'fmt'

τύπος Δομή ατόμου {
Ονομασία   συμβολοσειρά
Ηλικία    εν
Ύψος πλωτήρας64
IsMale bool
}

func main ( ) {
p1 := Πρόσωπο { Ονομα: 'Γιάννης' , Ηλικία: 30 }
fmt.Println ( σ1.Όνομα )
fmt.Println ( p1.Ηλικία )
fmt.Println ( p1.Ύψος )
fmt.Println ( p1.IsMale )
}

Ο παραπάνω κωδικός ορίζει ένα άτομο struct με τέσσερα πεδία: Όνομα, Ηλικία, Ύψος και IsMale, τα οποία είναι όλα τύπου δεδομένων bool. Στη συνέχεια, κάνουμε μια νέα παρουσία της κλάσης Person, p1, και αρχικοποιούμε μερικά από τα πεδία της χρησιμοποιώντας κυριολεκτικά struct για να καθορίσουμε τα ονόματα και τις τιμές των πεδίων. ο προεπιλεγμένες μηδενικές τιμές για τα πεδία που δεν ορίστηκαν ρητά κατά την προετοιμασία εμφανίζονται όταν εκτυπώνετε τις τιμές των πεδίων χρησιμοποιώντας fmt.Println .



Παραγωγή

2: Κατασκευαστές

Γράφοντας α κατασκευαστής συνάρτηση για τη δομή, μπορείτε επίσης να δώσετε προεπιλεγμένες τιμές για τη δομή πεδίων στο Golang. ο κατασκευαστής Η συνάρτηση δημιουργεί μια νέα παρουσία της δομής και ορίζει τις προεπιλεγμένες τιμές για τα πεδία της. Αυτή η μέθοδος εξοικονομεί προσπάθεια και χρόνο, ιδιαίτερα όταν αλληλεπιδράτε με τεράστιες κατασκευές με πολλά πεδία.

Ακολουθεί ένα παράδειγμα για τον ορισμό του a κατασκευαστής συνάρτηση με προεπιλεγμένες τιμές πεδίου για μια δομή:

κύριο πακέτο

εισαγωγή 'fmt'

τύπος Δομή ατόμου {
Συμβολοσειρά ονόματος    
Ηλικία     ενθ
Συμβολοσειρά διεύθυνσης
}
func NewPerson ( ) * Πρόσωπο {
ΕΠΙΣΤΡΟΦΗ & Πρόσωπο {
Ονομα: 'John Doe' ,
Ηλικία: 30 ,
Διεύθυνση: '123 Main St' ,
}
}
func main ( ) {
p := Νέο Πρόσωπο ( )
fmt.Println ( σ.Όνομα, σελ.Ηλικία, σελ.Διεύθυνση )
}

Στον παραπάνω κώδικα, α Πρόσωπο ορίζεται η δομή, καθώς και η newPerson() συνάρτηση, η οποία παράγει ένα νέο παράδειγμα του Πρόσωπο struct με προκαθορισμένες προεπιλογές. Καλούμε newPerson() σε κύριος() για να δημιουργήσετε μια νέα παρουσία ατόμου με προεπιλεγμένες τιμές πεδίου , και στη συνέχεια εκτυπώνουμε τις τιμές των πεδίων αυτής της παρουσίας.

Παραγωγή

3: Struct Literals

Στο Golang, μπορείτε να ορίσετε προεπιλεγμένες τιμές για πεδία δομής χρησιμοποιώντας struct κυριολεκτικά επισης. Απλώς δημιουργήστε μια νέα παρουσία της δομής και ορίστε τις τιμές για κάθε πεδίο που πρέπει να αρχικοποιηθεί. Εάν θέλετε να ορίσετε προεπιλεγμένες τιμές για πεδία που δεν αρχικοποιείτε ρητά, μπορείτε να χρησιμοποιήσετε τη δυνατότητα μηδενικής τιμής.

Εδώ είναι ένα παράδειγμα του τρόπου χρήσης struct κυριολεκτικά για να ορίσετε προεπιλεγμένες τιμές πεδίου για μια δομή:

κύριο πακέτο

εισαγωγή 'fmt'

τύπος Δομή ατόμου {
Συμβολοσειρά ονόματος    
Ηλικία     ενθ
Συμβολοσειρά διεύθυνσης
}
func main ( ) {
p := Πρόσωπο {
Ονομα: 'John Doe' ,
Ηλικία: 30 ,
}
fmt.Println ( σ.Όνομα, σελ.Ηλικία, σελ.Διεύθυνση )
}

Στον παραπάνω κώδικα ορίζουμε α Πρόσωπο struct σε αυτό το παράδειγμα και δημιουργήστε μια νέα παρουσία της χρησιμοποιώντας μια κυριολεκτική δομή και προεπιλεγμένες τιμές για τα πεδία της. Ενα νέο Πρόσωπο Το παράδειγμα δημιουργείται στο main() με ορισμένες τιμές πεδίου συμπληρωμένες και άλλες κενά. Δεδομένου ότι το Διεύθυνση Το πεδίο δεν έχει αρχικοποιηθεί, λαμβάνει την κενή συμβολοσειρά που είναι η προεπιλεγμένη τιμή για αυτό το πεδίο. Τέλος, εκτυπώνουμε τις τιμές πεδίου της παρουσίας Person.

Παραγωγή

4: Προεπιλεγμένες τιμές πεδίου

Εκχώρηση προεπιλεγμένες τιμές προς την κατασκευή πεδίων στο Go είναι μια απλή διαδικασία. ο Προεπιλεγμένη τιμή για ένα πεδίο struct μπορεί να οριστεί χρησιμοποιώντας τη σύνταξη fieldName:defaultValue . Για παράδειγμα, εξετάστε τον ακόλουθο ορισμό της δομής:

τύπος Δομή ατόμου {
Συμβολοσειρά ονόματος
Ηλικία ενθ
Συμβολοσειρά φύλου
}

Να αναθέσετε προεπιλεγμένες τιμές στα πεδία αυτής της δομής, μπορούμε να χρησιμοποιήσουμε την ακόλουθη σύνταξη:

p := Πρόσωπο {
Ονομα: 'John Doe' ,
Ηλικία: 30 ,
Γένος: 'Αρσενικός' ,
}

Στο παραπάνω παράδειγμα, έχουμε αναθέσει προεπιλεγμένες τιμές στα πεδία της δομής Person. Εάν παραλείψουμε κάποια από τις τιμές κατά την αρχικοποίηση, το Προεπιλεγμένη τιμή θα χρησιμοποιηθεί αντ' αυτού. Για παράδειγμα, αν αρχικοποιήσουμε ένα αντικείμενο Person όπως αυτό:

p := Πρόσωπο {
Ονομα: 'Jane Doe' ,
}

Το αντικείμενο Person που προκύπτει θα έχει το προεπιλεγμένες τιμές για τα πεδία Ηλικία και Φύλο, τα οποία είναι 0 και μια κενή συμβολοσειρά, αντίστοιχα.

Ακολουθεί ένας πλήρης κώδικας που επεξηγεί την παραπάνω διαδικασία:

κύριο πακέτο
εισαγωγή 'fmt'

τύπος Δομή ατόμου {
Ονομασία   συμβολοσειρά
Ηλικία    εν
Συμβολοσειρά φύλου
}
func main ( ) {
p1 := Πρόσωπο {
Ονομα: 'John Doe' ,
Ηλικία: 30 ,
Γένος: 'Αρσενικός' ,
}
fmt.Println ( p1 )

p2 := Άτομο {
Ονομα: 'Τζέρεμι' ,
}
fmt.Println ( p2 )
}

Στο παραπάνω παράδειγμα, κατασκευάζουμε μια δομή Person που έχει τρία πεδία: Όνομα, ένα int που αντιπροσωπεύει την ηλικία και Gender, μια συμβολοσειρά που αντιπροσωπεύει το φύλο. Η σύνταξη αρχικοποίησης δομής χρησιμοποιείται στη συνέχεια για την κατασκευή δύο παρουσιών Person, p1 και p2. Το p1 αρχικοποιείται με τις τιμές 'John Doe' για το Όνομα, '30' για την ηλικία και 'Male' για το Φύλο, οι οποίες είναι όλες τιμές που παρέχονται ρητά. Καθώς δεν δώσαμε τιμές για την Ηλικία και το Φύλο, οι προεπιλεγμένες τιμές του 0 και μια κενή συμβολοσειρά, αντίστοιχα, θα τους εκχωρηθούν. Το p2 αρχικοποιείται αρχικά με παρεχόμενο μόνο το πεδίο Όνομα.

Παραγωγή

συμπέρασμα

Εκχώρηση προεπιλεγμένες τιμές in Go είναι μια ουσιαστική πτυχή του προγραμματισμού με αυτήν τη γλώσσα. Βοηθά να διασφαλιστεί ότι κάθε παρουσία δομής που δημιουργείται έχει προεπιλεγμένα δεδομένα που της έχουν εκχωρηθεί. Χρησιμοποιώντας οποιαδήποτε από τις μεθόδους που εξηγούνται παραπάνω, οι προγραμματιστές μπορούν να ορίσουν το προεπιλεγμένες τιμές των πεδίων κατασκευής αποτελεσματικά.