在Go语言中,结构体的初始化及赋值可以通过以下两种方法进行:
- 字面量初始化:直接使用结构体类型的名称,并在花括号内指定字段的初始值。例如:
type Person struct {
Name string
Age int
}
func main() {
// 初始化并赋值
p := Person{Name: "Alice", Age: 25}
// 访问结构体的字段
fmt.Println(p.Name) // 输出:Alice
fmt.Println(p.Age) // 输出:25
}
- 使用new关键字进行初始化:使用new关键字创建一个指向结构体的指针,并使用点号语法对结构体的字段进行赋值。例如:
type Person struct {
Name string
Age int
}
func main() {
// 使用new关键字进行初始化
p := new(Person)
p.Name = "Bob"
p.Age = 30
// 访问结构体的字段
fmt.Println(p.Name) // 输出:Bob
fmt.Println(p.Age) // 输出:30
}
在上述示例中,我们创建了一个名为Person的结构体类型,该结构体包含两个字段:Name和Age。然后,我们使用字面量初始化方法和new关键字初始化方法分别创建了一个Person类型的变量p,并对其字段进行赋值。最后,通过点号语法访问结构体的字段并打印出来。