Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 構造体内のデータ | 構造体とマップのイントロダクション
Go入門

book構造体内のデータ

メニューを表示するにはスワイプしてください

構造体のインスタンスを作成する方法を理解したので、次はその中にデータを格納し、変更する方法を学びます。

フィールド名の前にドット(.)記号を付けて参照できます。次のプログラム例では、Student クラスのインスタンス 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) }

これは、構造体に手動でデータが格納されていないため、各フィールドがその型に基づいたデフォルトのゼロ値を取るためです。

注意

Goでは、フィールドのデフォルト値を独自に指定することはできません。型に基づいて自動的にゼロ値が割り当てられます。ただし、コンストラクタ関数を作成することでカスタムのデフォルト値を指定することは可能ですが、これはポインタの知識が必要となるため本コースの範囲外です。

また、同じ参照方法を使ってフィールドに値を参照・代入することもできます。例えば:

index.go

index.go

copy
1
student1.name = "Leo"

したがって、上記のプログラムを修正して初期データを格納することができます。

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) }

注意

構造体のフィールドはメンバーとも呼ばれます。

question mark

構造体のメンバー/フィールドにアクセスするために使用する記号はどれですか:

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 6.  3

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 6.  3
some-alt