Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Data i Structs | Introduktion til Structs og Maps
Introduktion til Golang

bookData i Structs

Nu hvor vi ved, hvordan man opretter en instans af en struktur, bør vi lære, hvordan man gemmer og ændrer data i dem.

Vi kan bruge punktum (.) efterfulgt af feltnavnet for at referere til det. Overvej eksemplet i det følgende program, hvor vi opretter en instans af Student-klassen kaldet student1:

index.go

index.go

copy
123456789101112131415161718192021
package 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 der ikke blev gemt nogen data manuelt i strukturen, hvilket får hvert felt til at antage en standard nulværdi baseret på dets type.

Bemærk

I Go kan vi ikke angive vores egne standardværdier for felterne; der tildeles automatisk nulværdier til felterne baseret på deres typer. Vi kan dog angive brugerdefinerede standardværdier ved at oprette en konstruktørfunktion, hvilket ligger uden for dette kursus' rammer, da det kræver kendskab til pointers.

Vi kan også referere til og tildele værdier til felterne ved at bruge samme reference-metode, for eksempel:

index.go

index.go

copy
1
student1.name = "Leo"

Derfor kan vi ændre programmet ovenfor til at gemme nogle indledende data tilsvarende:

index.go

index.go

copy
123456789101112131415161718192021222324252627
package 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) }

Bemærk

Felterne i en struct kaldes også medlemmer.

question mark

Hvilket symbol bruges til at tilgå struct-medlemmer / felter:

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 6. Kapitel 3

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Awesome!

Completion rate improved to 1.96

bookData i Structs

Stryg for at vise menuen

Nu hvor vi ved, hvordan man opretter en instans af en struktur, bør vi lære, hvordan man gemmer og ændrer data i dem.

Vi kan bruge punktum (.) efterfulgt af feltnavnet for at referere til det. Overvej eksemplet i det følgende program, hvor vi opretter en instans af Student-klassen kaldet student1:

index.go

index.go

copy
123456789101112131415161718192021
package 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 der ikke blev gemt nogen data manuelt i strukturen, hvilket får hvert felt til at antage en standard nulværdi baseret på dets type.

Bemærk

I Go kan vi ikke angive vores egne standardværdier for felterne; der tildeles automatisk nulværdier til felterne baseret på deres typer. Vi kan dog angive brugerdefinerede standardværdier ved at oprette en konstruktørfunktion, hvilket ligger uden for dette kursus' rammer, da det kræver kendskab til pointers.

Vi kan også referere til og tildele værdier til felterne ved at bruge samme reference-metode, for eksempel:

index.go

index.go

copy
1
student1.name = "Leo"

Derfor kan vi ændre programmet ovenfor til at gemme nogle indledende data tilsvarende:

index.go

index.go

copy
123456789101112131415161718192021222324252627
package 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) }

Bemærk

Felterne i en struct kaldes også medlemmer.

question mark

Hvilket symbol bruges til at tilgå struct-medlemmer / felter:

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 6. Kapitel 3
some-alt