I denne guiden vil vi se på hvordan vi kan erklære en struktur og forskjellige metoder for hvordan vi kan skrive ut en struktur i Go.
Erklærer en struktur
Vi kan erklære en struktur i Go ved å bruke nøkkelordet. Vi starter med søkeordtypen, etterfulgt av navnet på strukturen og nøkkelordstrukturen.
Syntaksen er vist:
type struct_name type
Vi inkluderer da felt av strukturen inne i et par krøllete seler.
Eksemplet nedenfor skaper en enkel struktur:
pakkehoved
Skriv brukerstruktur
Navnstreng
Alder int
Ansatt bool
func main ()
I syntaks ovenfor lager vi en struktur som heter bruker. Vi setter deretter felt med forskjellige datatyper.
Struct forekomst
Etter strukturerklæringen må vi lage en forekomst av strukturen. Eksemplet nedenfor viser deg hvordan du oppretter en forekomst av brukerstrukturen.
Bruker1: = bruker "Jane Doe", 65, falsk
Utdraget over oppretter en forekomst av brukerstrukturen som heter User1.
Utskriftsstruktur
Vi kan skrive ut en struktur ved hjelp av Printf -metoden fra FMT -pakken. Det gir oss spesielle formateringsalternativer for å skrive ut en struktur. Slike alternativer inkluderer:
Formateringsalternativ | Betydning |
---|---|
%v | Skriv ut verdien på variabelen i standardformatet |
%+v | Utskriftsstruktur feltnavn og tilhørende verdi |
Tenk på eksempelkoden nedenfor:
pakkehoved
Importer "FMT"
Skriv brukerstruktur
Navnstreng
Alder int
Ansatt bool
func main ()
Bruker1: = bruker "Jane Doe", 65, falsk
fmt.Printf ("%v \ n", bruker1)
fmt.Printf ("%+v \ n", bruker1)
fmt.Printf ("%d \ n", bruker1.Alder)
fmt.Printf ("%s \ n", bruker1.Navn)
Ved hjelp av printf -funksjonen kan vi hente alle felt i strukturen eller få tilgang til individuelle verdier for strukturen.
Den resulterende utgangen er som vist:
Jane Doe 65 falsk
Navn: Jane Doe Alder: 65 Ansatt: falsk
65
Jane Doe
Merk at %v formatter skriver ut bare verdiene. Hvis du vil få feltnavnet og den tilhørende verdien, bruker vi %+V -alternativet.
Print Struct - Json.Marshall
Den andre metoden du kan bruke til å skrive ut en struktur er å bruke marskalkemetoden fra koding/json -pakken.
Sjekk opplæringen vår om Json Marshal og Unmarshall i Go for å lære mer.
Eksemplet nedenfor illustrerer hvordan du bruker marshalfunksjonen.
pakkehoved
import (
"koding/json"
"FMT"
)
Skriv brukerstruktur
Navnstreng
Alder int
Ansatt bool
func main ()
Bruker1: = bruker "Jane Doe", 65, falsk
JSON, _: = JSON.Marshal (User1)
fmt.Println (String (JSON))
Funksjonen skal returnere strukturfeltene og verdiene som vist i utgangen nedenfor:
"Navn": "Jane Doe", "Age": 65, "ansatt": falsk
Konklusjon
Eksemplet nedenfor diskuterer forskjellige metoder for å skrive ut en struktur, for eksempel Prinft -funksjonen og Json Marshal.
Takk for at du leste!