go创建对象数组

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

在这个例子中:

  1. 定义了一个 Person 结构体,包含 NameAgeAddress 字段。
  2. Address 字段本身是一个结构体,包含 CityState 字段。
  3. main 函数中,使用字面量的方式创建了一个 Person 对象数组 people,并初始化了每个 Person 对象的字段。
  4. 最后,使用 for 循环遍历数组,打印每个 Person 对象的字段值。

这种方法不仅可以初始化单个对象,还可以方便地初始化对象数组。

后续建议:
a. 尝试向 Person 结构体中添加更多字段,并初始化这些字段。
b. 编写函数来处理和操作这个对象数组,比如过滤或排序。

相关推荐
it_czz3 分钟前
LangSmith vs LangFlow vs LangGraph Studio 可视化配置方案对比
后端
蓝色王者5 分钟前
springboot 2.6.13 整合flowable6.8.1
java·spring boot·后端
程序炼丹师10 分钟前
CMakeLists中 get_filename_component详解
开发语言
꧁Q༒ོγ꧂34 分钟前
C++ 入门完全指南(四)--函数与模块化编程
开发语言·c++
花哥码天下1 小时前
apifox登录后设置token到环境变量
java·后端
listhi5201 小时前
对LeNet-5的matlab实现,识别MINST手写数字集
开发语言·matlab
qq_433554541 小时前
C++ manacher(求解回文串问题)
开发语言·c++·算法
csbysj20201 小时前
Chart.js 饼图:全面解析与实例教程
开发语言
浩瀚地学1 小时前
【Java】常用API(二)
java·开发语言·经验分享·笔记·学习
程序员小寒1 小时前
从一道前端面试题,谈 JS 对象存储特点和运算符执行顺序
开发语言·前端·javascript·面试