構造体の初期化
CoddyのGOジャーニー「基礎」セクションの一部 — レッスン 98/109。
Goで構造体を初期化する方法はいくつかあります。最も一般的な方法を見ていきましょう。
フィールド名を使用して構造体を作成します:
type Person struct {
name string
age int
}
func main() {
// フィールド名で初期化する
person1 := Person{name: "Alice", age: 30}
fmt.Println(person1)
}出力には、初期化された構造体が表示されます:
{Alice 30}フィールド名なしで構造体を初期化することもできますが、その場合は値を順番に指定する必要があります。
person2 := Person{"Bob", 25}
fmt.Println(person2)結果:
{Bob 25}ゼロ値を持つ空の構造体を作成します:
person3 := Person{}
fmt.Println(person3)結果:
{ 0}チャレンジ
初心者このチャレンジでは、Goで構造体を初期化する練習をします。名前、年齢、および雇用されているかどうかを表すフィールドを持つ Person 構造体を定義しました。
あなたのタスクは、以下の情報を使用して新しい Person 構造体のインスタンスを初期化することです:
- Name: "Alice"
- Age: 28
- IsEmployed: true
その後、この人物に関する情報を出力します。
チートシート
Goで構造体を初期化する方法はいくつかあります:
フィールド名で初期化する:
person1 := Person{name: "Alice", age: 30}フィールド名なしで初期化する(値は順番通りである必要があります):
person2 := Person{"Bob", 25}ゼロ値で空の構造体を作成する:
person3 := Person{}自分で試してみよう
package main
import "fmt"
// Person 構造体の定義
type Person struct {
Name string
Age int
IsEmployed bool
}
func main() {
// TODO: 名前 "Alice"、年齢 28、isEmployed を true として Person 構造体を初期化する
// フィールド名を使用するか、構造体リテラル構文を使用してください
var alice Person
// 人物の情報を表示する
fmt.Printf("Name: %s\n", alice.Name)
fmt.Printf("Age: %d\n", alice.Age)
fmt.Printf("Employed: %t\n", alice.IsEmployed)
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。