目录
- 前言
- 定义
- 初始化
- 键值对初始化
- 值列表初始化
- 结构体成员访问
前言
我们知道的基本类型有数值型,字符型等等,但是这些基本类型只能表示同一种元素类型的集合,如果我要表示学生的信息,一个学生包括姓名(字符型),学号(整型),年龄(整型)等属性,基本的数据类型只能表示其中一个属性,想要表示学生的信息,就要把这些属性全部描述出来,这个时候就要用到结构体了
定义
结构体可以简单理解位若干个基本数据类型的组合
定义:
type Student struct {Name stringID intAge int
}
初始化
键值对初始化
在初始化的时候,给属性赋值,如果有的属性不写,则为默认值。
//demo1
package mainimport "fmt"type Student struct {Name stringID intAge int
}func main() {var st = Student{//属性: 值Name: "jack", //需要尾随逗号ID: 123456,Age: 18,}fmt.Println(st)
}
其中
var st = Student
也可以写成
st := Student
输出结果是:
{jack 123456 18}
值列表初始化
在初始化的时候直接按属性顺序给属性赋初始值,不必写属性
st := Student{//值"jack",123456,18,
}
以值列表方式初始化,值列表的个数必须等于结构体属性的个数,并且必须按顺序
结构体成员访问
使用 .
号来访问结构体成员, .
前是结构体变量或者结构体指针
package mainimport "fmt"type Student struct {Name stringID intAge int
}func main() {st := Student{//值"jack",123456,18,}fmt.Println(st.Name)
}
输出结果是:
jack