Дані у Структурах
Свайпніть щоб показати меню
Тепер, коли ми знаємо, як створити екземпляр структури, слід навчитися зберігати та змінювати дані в ній.
Можна використовувати символ крапки (.), після якого вказується назва поля для звернення до нього. Розгляньте приклад у наступній програмі, де створюється екземпляр класу Student з іменем 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) }
Це відбувається тому, що жодні дані не були вручну збережені у структурі, внаслідок чого кожне з полів отримує типове нульове значення відповідно до свого типу.
Примітка
У Go не можна вказати власні типові значення для полів; мова автоматично призначає нульові значення полям відповідно до їхніх типів. Однак можна задати власні типові значення, створивши конструктор-функцію, що виходить за межі цього курсу, оскільки потребує знань про покажчики.
Можна також звертатися до полів і присвоювати їм значення, використовуючи той самий спосіб звернення, наприклад:
index.go
1student1.name = "Leo"
Відповідно, ми можемо змінити програму вище, щоб зберегти деякі початкові дані:
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) }
Примітка
Поля структури також називають членами.
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат