在Golang for循环中通过索引构造变量名的最有效方法

问题描述 投票:-2回答:1

Golang的新手。如果我想通过索引使用forloop构造10个不同的变量(下面的示例),连接索引和变量名称的最有效方法是什么?显然,以下方法是不正确的。

for i := 0; i < 10; i++ {
    user + i:= CreateUser("user_num_" + i)
    user + i + bytes, _ := json.Marshal(&user + i)
}
for-loop go
1个回答
2
投票

您正在寻找slices

users := make([]User, 10)
for i := 0; i < 10; i++ {
    users[i] = CreateUser(fmt.Sprintf("user_num_%d", i))
    bytes, err := json.Marshal(users[i])
    // TODO: handle err
    fmt.Printf("OK: user[%d] = %s\n", i, string(bytes))
}

与它们的底层array结构一样,切片允许您存储有序的项目序列并通过它们的索引引用它们。

© www.soinside.com 2019 - 2024. All rights reserved.