Data i Strukturer
Nu när vi vet hur man skapar en instans av en struktur, bör vi lära oss hur man lagrar och ändrar data i dem.
Vi kan använda punkt (.)-symbolen följt av fältnamnet för att referera till det. Titta på exemplet i följande program, där vi skapar en instans av klassen Student kallad 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) }
Detta beror på att ingen data manuellt lagrades i strukturen, vilket gör att varje fält får ett förinställt nollvärde baserat på dess typ.
Obs
I Go kan vi inte ange egna standardvärden för fälten; det tilldelas automatiskt nollvärden till fälten baserat på deras typer. Vi kan dock ange egna standardvärden genom att skapa en konstruktörsfunktion, vilket ligger utanför denna kurs eftersom det kräver kunskap om pekare.
Vi kan också referera till och tilldela värden till fälten med samma referensmetod, till exempel:
index.go
1student1.name = "Leo"
Därför kan vi ändra programmet ovan för att lagra viss initial data på lämpligt sätt:
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) }
Obs
Fälten i en struct kallas även medlemmar.
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Awesome!
Completion rate improved to 1.96
Data i Strukturer
Svep för att visa menyn
Nu när vi vet hur man skapar en instans av en struktur, bör vi lära oss hur man lagrar och ändrar data i dem.
Vi kan använda punkt (.)-symbolen följt av fältnamnet för att referera till det. Titta på exemplet i följande program, där vi skapar en instans av klassen Student kallad 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) }
Detta beror på att ingen data manuellt lagrades i strukturen, vilket gör att varje fält får ett förinställt nollvärde baserat på dess typ.
Obs
I Go kan vi inte ange egna standardvärden för fälten; det tilldelas automatiskt nollvärden till fälten baserat på deras typer. Vi kan dock ange egna standardvärden genom att skapa en konstruktörsfunktion, vilket ligger utanför denna kurs eftersom det kräver kunskap om pekare.
Vi kan också referera till och tilldela värden till fälten med samma referensmetod, till exempel:
index.go
1student1.name = "Leo"
Därför kan vi ändra programmet ovan för att lagra viss initial data på lämpligt sätt:
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) }
Obs
Fälten i en struct kallas även medlemmar.
Tack för dina kommentarer!