Golang的新手。如果我想通过索引使用forloop构造10个不同的变量(下面的示例),连接索引和变量名称的最有效方法是什么?显然,以下方法是不正确的。
for i := 0; i < 10; i++ { user + i:= CreateUser("user_num_" + i) user + i + bytes, _ := json.Marshal(&user + i) }
您正在寻找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结构一样,切片允许您存储有序的项目序列并通过它们的索引引用它们。