Kuinka määrittää oletusarvot rakennekentille Golangissa?

Kuinka Maarittaa Oletusarvot Rakennekentille Golangissa



Golang on moderni ohjelmointikieli, joka on saavuttanut suosiota viime vuosina. Yksi Golangin tehokkaista ominaisuuksista on sen kyky määritellä ja käsitellä rakenteita. Rakenteet ovat käyttäjän määrittämiä tietotyyppejä, joiden avulla kehittäjät voivat ryhmitellä toisiinsa liittyvät tietokentät yhdeksi objektiksi. Mene, rakenteet voi olla oletusarvot kenttiinsä, mikä tekee niiden alustamisesta paljon helpompaa.

Tässä esseessä tutkimme, kuinka a oletusarvo struct-kenttään Golangissa.

Mitä ovat rakennekentät?

Ensinnäkin on tärkeää ymmärtää käsite rakentaa kenttiä . The rakentaa kenttiä ovat muuttujia, jotka on ryhmitelty muodostamaan a struct esine. Jokainen rakennekenttä on nimi ja tietotyyppi. Esimerkiksi henkilöä edustavassa rakenteessa voi olla kenttiä, kuten nimi, ikä ja sukupuoli.







Kuinka määrittää oletusarvot rakennekentille Golangissa?

Oletusarvot voidaan määrittää Go:n struct-kentille käyttämällä:



  • Oletusnolla-arvot
  • Rakentajat
  • Rakennekirjaimet
  • Oletuskenttien arvot

1: Oletusnolla-arvot

Go:ssa oletusarvojen määrittäminen struct-kentille voidaan saavuttaa ' nolla arvo ”-ominaisuus. Tämä ominaisuus määrittää automaattisesti oletusarvon joko ' 0 ' tai ' väärä ” jokaiseen alustamattomaan kenttään tietotyypistä riippuen. Tämä tarkoittaa, että sinun ei tarvitse nimenomaisesti asettaa oletusarvoja jokaiselle rakenteen kentälle, koska Go tekee sen puolestasi.



Tämä ominaisuus voi olla hyödyllinen käsiteltäessä suuria rakenteita, joissa on useita kenttiä, koska se säästää aikaa ja vaivaa, joka aiheutuu kunkin kentän oletusarvojen manuaalisesta asettamisesta.





Tässä on esimerkki, joka käyttää nolla-arvoa oletusarvojen määrittämiseen struct-kentille:

pääpaketti

tuonti 'fmt'

tyyppi Henkilörakenne {
Nimimerkkijono
Ikä    int
Korkeus kellunta 64
IsMale bool
}

func main ( ) {
p1 := Henkilö { Nimi: 'John' , Ikä: 30 }
fmt.Println ( p1.Nimi )
fmt.Println ( p1.Ikä )
fmt.Println ( p1.Korkeus )
fmt.Println ( p1.On Mies )
}

Yllä oleva koodi määrittelee henkilön struct neljällä kentällä: Nimi, Ikä, Pituus ja IsMale, jotka kaikki ovat bool-tietotyyppiä. Sitten tehdään uusi esiintymä Person-luokasta, p1, ja alustetaan jotkin sen kentät käyttämällä struct literaaleja määrittämään kenttien nimet ja arvot. The oletusnolla-arvot kentät, joita ei nimenomaisesti asetettu alustuksen aikana, näytetään, kun tulostat kenttien arvot käyttämällä fmt.Println .



Lähtö

2: Rakentajat

Kirjoittamalla a rakentaja funktion structille, voit myös antaa oletusarvoja Golangin struct-kentille. The rakentaja -funktio luo rakenteen uuden esiintymän ja asettaa oletusarvot sen kentille. Tämä menetelmä säästää vaivaa ja aikaa, varsinkin kun ollaan vuorovaikutuksessa valtavien, lukuisia kenttiä sisältävien rakenteiden kanssa.

Tässä on esimerkki a rakentaja funktio rakenteen oletuskenttäarvoilla:

pääpaketti

tuonti 'fmt'

tyyppi Henkilörakenne {
Nimi    merkkijono
Ikä     int
Osoitemerkkijono
}
Func NewPerson ( ) * Henkilö {
palata & Henkilö {
Nimi: 'John Doe' ,
Ikä: 30 ,
Osoite: '123 Main St' ,
}
}
func main ( ) {
p := UusiPerson ( )
fmt.Println ( p.Nimi, s.Ikä, p.Osoite )
}

Yllä olevassa koodissa a Henkilö struct on määritelty, samoin kuin uusi henkilö() funktio, joka tuottaa uuden esiintymän Henkilö struct ennalta määrätyillä oletusarvoilla. Kutsumme uusi henkilö() sisään pää() luodaksesi uuden Person-esiintymän kanssa oletuskenttien arvot , ja tulostamme sitten kyseisen ilmentymän kenttien arvot.

Lähtö

3: Rakennekirjaimet

Golangissa voit asettaa oletusarvot struct-kentille käyttämällä rakentaa literaaleja yhtä hyvin. Yksinkertaisesti luo uusi ilmentymä rakenteelle ja aseta arvot jokaiselle alustettavalle kentälle. Jos haluat määrittää oletusarvot kentille, joita et nimenomaisesti alusta, voit käyttää nolla-arvoominaisuutta.

Tässä on esimerkki käytöstä rakentaa literaaleja asettaaksesi oletuskentän arvot rakenteelle:

pääpaketti

tuonti 'fmt'

tyyppi Henkilörakenne {
Nimi    merkkijono
Ikä     int
Osoitemerkkijono
}
func main ( ) {
p := Henkilö {
Nimi: 'John Doe' ,
Ikä: 30 ,
}
fmt.Println ( p.Nimi, s.Ikä, p.Osoite )
}

Yllä olevassa koodissa määrittelemme a Henkilö struct tässä esimerkissä ja luo siitä uusi esiintymä käyttämällä struct literaalia ja oletusarvoja sen kentille. Uusi Henkilö ilmentymä luodaan kenttään main() niin, että osa kenttien arvoista on täytetty ja osa jätetty tyhjiksi. Koska Osoite kenttää ei ole alustettu, se vastaanottaa tyhjän merkkijonon, joka on tämän kentän oletusarvo. Lopuksi tulostamme Henkilö-ilmentymän kenttäarvot.

Lähtö

4: Oletuskenttien arvot

Määritetään oletusarvot to rakentaa kenttiä in Go on suoraviivainen prosessi. The oletusarvo struct-kenttään voidaan asettaa käyttämällä syntaksia fieldName:oletusarvo . Harkitse esimerkiksi seuraavaa rakenteen määritelmää:

tyyppi Henkilörakenne {
Nimimerkkijono
Ikä int
Sukupuolimerkkijono
}

Määräämään oletusarvot tämän rakenteen kenttiin voimme käyttää seuraavaa syntaksia:

p := Henkilö {
Nimi: 'John Doe' ,
Ikä: 30 ,
Sukupuoli: 'Uros' ,
}

Yllä olevassa esimerkissä olemme määrittäneet oletusarvot persoonarakenteen kenttiin. Jos jätämme pois jonkin arvoista alustuksen aikana, oletusarvo käytetään sen sijaan. Jos esimerkiksi alustamme Person-objektin seuraavasti:

p := Henkilö {
Nimi: 'Jane Doe' ,
}

Tuloksena olevalla Person-objektilla on oletusarvot Ikä- ja Sukupuoli-kentille, jotka ovat 0 ja tyhjä merkkijono.

Tässä on täydellinen koodi, joka havainnollistaa yllä olevaa prosessia:

pääpaketti
tuonti 'fmt'

tyyppi Henkilörakenne {
Nimimerkkijono
Ikä    int
Sukupuolimerkkijono
}
func main ( ) {
p1 := Henkilö {
Nimi: 'John Doe' ,
Ikä: 30 ,
Sukupuoli: 'Uros' ,
}
fmt.Println ( p1 )

p2 := Henkilö {
Nimi: 'Jeremy' ,
}
fmt.Println ( p2 )
}

Yllä olevassa esimerkissä rakennamme Person-rakenteen, jossa on kolme kenttää: Nimi, ikää edustava int ja sukupuoli, sukupuolta edustava merkkijono. Rakenteen alustussyntaksia käytetään sitten kahden henkilö-instanssin, p1 ja p2, rakentamiseen. p1 on alustettu arvoilla 'John Doe' nimelle, '30' ikälle ja 'mies' sukupuolelle, jotka ovat kaikki nimenomaisesti annettuja arvoja. Koska emme antaneet arvoja Ikälle ja Sukupuolelle, niille määritetään oletusarvot 0 ja vastaavasti tyhjä merkkijono. p2 alustetaan aluksi vain Nimi-kentällä.

Lähtö

Johtopäätös

Määritetään oletusarvot in Go on olennainen osa ohjelmointia tällä kielellä. Se auttaa varmistamaan, että jokaiselle luodulle rakenneinstanssille on määritetty oletustiedot. Käyttämällä mitä tahansa yllä kuvatuista menetelmistä kehittäjät voivat asettaa oletusarvot rakentaa kentät tehokkaasti.