Data i Strukturer
Nå som vi vet hvordan vi oppretter en instans av en struktur, bør vi lære hvordan vi lagrer og endrer data i dem.
Vi kan bruke punktum (.) etterfulgt av feltnavnet for å referere til det. Se eksemplet i følgende program, hvor vi oppretter en instans av Student-klassen kalt student1:
index.go
123456789101112131415161718192021package main import "fmt" type Student struct { name string age int id int course string grades [5]float32 } func main() { var student1 Student fmt.Println("Name:", student1.name) fmt.Println("Age:", student1.age) fmt.Println("ID:", student1.id) fmt.Println("Course:", student1.course) fmt.Println("Grades:", student1.grades) }
Dette skyldes at ingen data ble manuelt lagret i strukturen, noe som fører til at hvert felt får en standard nullverdi basert på sin type.
Merk
I Go kan vi ikke angi egne standardverdier for feltene; det tildeles automatisk nullverdier til feltene basert på deres typer. Vi kan imidlertid angi egendefinerte standardverdier ved å opprette en konstruktørfunksjon, men dette er utenfor rammen for dette kurset da det krever kunnskap om pekere.
Vi kan også referere til og tilordne verdier til feltene ved å bruke samme referansemetode, for eksempel:
index.go
1student1.name = "Leo"
Derfor kan vi endre programmet ovenfor for å lagre noen innledende data tilsvarende:
index.go
123456789101112131415161718192021222324252627package main import "fmt" type Student struct { name string age int id int course string grades [5]float32 } func main() { var student1 Student student1.name = "Leo" student1.age = 21 student1.id = 121 student1.course = "CS" student1.grades = [5] float32 { 4.5, 4.55, 4.49, 4.92, 5.0 } fmt.Println("Name:", student1.name) fmt.Println("Age:", student1.age) fmt.Println("ID:", student1.id) fmt.Println("Course:", student1.course) fmt.Println("Grades:", student1.grades) }
Merk
Feltene i en struct kalles også medlemmer.
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
What are the zero values for different data types in Go?
Can you explain how to assign values to struct fields?
What is a constructor function in Go?
Awesome!
Completion rate improved to 1.96
Data i Strukturer
Sveip for å vise menyen
Nå som vi vet hvordan vi oppretter en instans av en struktur, bør vi lære hvordan vi lagrer og endrer data i dem.
Vi kan bruke punktum (.) etterfulgt av feltnavnet for å referere til det. Se eksemplet i følgende program, hvor vi oppretter en instans av Student-klassen kalt student1:
index.go
123456789101112131415161718192021package main import "fmt" type Student struct { name string age int id int course string grades [5]float32 } func main() { var student1 Student fmt.Println("Name:", student1.name) fmt.Println("Age:", student1.age) fmt.Println("ID:", student1.id) fmt.Println("Course:", student1.course) fmt.Println("Grades:", student1.grades) }
Dette skyldes at ingen data ble manuelt lagret i strukturen, noe som fører til at hvert felt får en standard nullverdi basert på sin type.
Merk
I Go kan vi ikke angi egne standardverdier for feltene; det tildeles automatisk nullverdier til feltene basert på deres typer. Vi kan imidlertid angi egendefinerte standardverdier ved å opprette en konstruktørfunksjon, men dette er utenfor rammen for dette kurset da det krever kunnskap om pekere.
Vi kan også referere til og tilordne verdier til feltene ved å bruke samme referansemetode, for eksempel:
index.go
1student1.name = "Leo"
Derfor kan vi endre programmet ovenfor for å lagre noen innledende data tilsvarende:
index.go
123456789101112131415161718192021222324252627package main import "fmt" type Student struct { name string age int id int course string grades [5]float32 } func main() { var student1 Student student1.name = "Leo" student1.age = 21 student1.id = 121 student1.course = "CS" student1.grades = [5] float32 { 4.5, 4.55, 4.49, 4.92, 5.0 } fmt.Println("Name:", student1.name) fmt.Println("Age:", student1.age) fmt.Println("ID:", student1.id) fmt.Println("Course:", student1.course) fmt.Println("Grades:", student1.grades) }
Merk
Feltene i en struct kalles også medlemmer.
Takk for tilbakemeldingene dine!