需要帮助存储在数组结构中

时间:2016-11-15 06:52:58

标签: arrays go struct

我是编程的初学者,现在我正在学习go lang这个问题可能很简单。我的声明如下:

var list []struct {
    Name    string
    Value string
}

问题是我不知道如何在其中初始化变量。感谢任何帮助。

我试过了

    list[0].Name="12"
    list[0].Value="123"
    // this throws an index out of range exception..

2 个答案:

答案 0 :(得分:3)

首先,您必须在主范围之外声明一种结构类型:

type myStruct struct {
   Name  string
   Value string
}

然后你说去,"我想要一个这个结构的x片#34; :

list := make([]myStruct, 5)

然后你只需用正确的索引填充你的结构:

list[0].Name = "12"
list[0].Value = "123"

答案 1 :(得分:0)

以下方法可能是您正在寻找的方法。

package main
import ("fmt")
type YourType struct {
    Name, Value string
}
var ListOfTypes=[]YourType{
    {Name:"NameOne",Value:"ValueOne"},
    {Name:"NameTwo",Value:"ValueTwo"},
}
func main() {
    fmt.Println(ListOfTypes[0]) // This will print {NameOne ValueOne}
    ListOfTypes[0].Name="NewValue"
    fmt.Println(ListOfTypes[0]) //{NewValue ValueOne}
}