go语言结构体怎么使用?

文章目录

  • 前言
  • 一、结构体类型是什么?
  • 二、结构体变量怎么使用
    • 1.定义结构体
    • 2.使用结构体
      • ①使用结构体变量
      • ②使用结构体指针(操作链表)
  • 总结
    • GO GO GO !


前言

前面介绍过一些简单的数据类型:布尔、数字类型、整型、浮点型、字符串类型这些类型都较为简单,在实际需求中可能不仅仅是这些类型,比如说:将一个人抽象到程序内,需要有的string属性是id、name…,需要是int类型的有age…,将不同的类型数据集于一身,就产生了结构体类型。


一、结构体类型是什么?

该数据类型由一组称为成员(或称为域,或称为元素)的不同数据组成,其中每个成员可以具有不同的类型。结构体内的属性变量使用方法与普通变量一样。

二、结构体变量怎么使用

1.定义结构体

代码如下(示例一个普通的结构体变量):

type man struct {
	id   string
	name string
	age  int
}

代码如下(示例一个嵌套结构体变量):

//该类结构体可用于创建链表、树、图等复杂数据结构(通过改变指针域的数量)
type man struct {
	id   string
	name string
	age  int
	next *man
}

2.使用结构体

①使用结构体变量

代码如下(示例):

//直接初始化
	// 第一种初始化方式
	user := man{"2015105591", "小明", 18}
	fmt.Println(user)
	// 第二种初始化方式
	user1 := man{id: "888", name: "小铝", age: 20}
	fmt.Println(user1)

②使用结构体指针(操作链表)

代码如下(示例):

	// 使用结构体创建一个简单的链表
	var head *node
	//给这个指针开辟空间
	head = new(node)
	//给下一节点开辟空间
	head.next = new(node)
	//给第二个节点数据域赋值
	head.next.age = 10
	head.next.name="xiaoM"
	head.next.id="888"
	//尾节点指针域赋空
	head.next.next = nil
	// 遍历那个简单的链表
	for p := head; p.next != nil; p = p.next {
		fmt.Println(p.next.age)
	}

总结

Go语言结构体与其他语言的结构体很类似,使用操作方法也一样,本篇简单的带领大家领略一下go语言的结构体风采。


go语言结构体怎么使用?_第1张图片


GO GO GO !

你可能感兴趣的:(Go语言从入门到精通,golang,链表,数据结构)