在 Go 语言中,可以使用字面量的方式创建结构体对象数组。以下是一个示例代码,展示了如何使用字面量创建一个结构体对象数组:
go
package main
import "fmt"
// 定义一个结构体
type Person struct {
Name string
Age int
Address Address
}
// 定义嵌套的结构体
type Address struct {
City string
State string
}
func main() {
// 使用字面量的方式创建一个 Person 对象数组
people := []Person{
{
Name: "Alice",
Age: 30,
Address: Address{
City: "San Francisco",
State: "CA",
},
},
{
Name: "Bob",
Age: 25,
Address: Address{
City: "Los Angeles",
State: "CA",
},
},
{
Name: "Charlie",
Age: 35,
Address: Address{
City: "New York",
State: "NY",
},
},
}
// 打印每个对象的信息
for _, person := range people {
fmt.Println("Name:", person.Name)
fmt.Println("Age:", person.Age)
fmt.Println("City:", person.Address.City)
fmt.Println("State:", person.Address.State)
fmt.Println()
}
}
在这个例子中:
- 定义了一个
Person
结构体,包含Name
、Age
和Address
字段。 Address
字段本身是一个结构体,包含City
和State
字段。- 在
main
函数中,使用字面量的方式创建了一个Person
对象数组people
,并初始化了每个Person
对象的字段。 - 最后,使用
for
循环遍历数组,打印每个Person
对象的字段值。
这种方法不仅可以初始化单个对象,还可以方便地初始化对象数组。
后续建议:
a. 尝试向 Person
结构体中添加更多字段,并初始化这些字段。
b. 编写函数来处理和操作这个对象数组,比如过滤或排序。