Go语言列表list

Go语言列表list教程

列表是一种非连续的存储容器,由多个节点组成,节点通过一些 变量 记录彼此之间的关系,列表有多种实现方法,如单链表、双链表等。

Go 语言 中,列表使用 container/list 包来实现,内部的实现原理是双链表,列表能够高效地进行任意位置的元素插入和删除操作。

Golang 中的列表可以存储任意 数据类型 的值,列表的初始化有两种方式,分别为:使用 list.New 初始化和使用 var 初始化。

使用list.New初始化列表

语法

listName := list.New()

说明

通过 list.New 初始化了一个名为 listName 的列表。

使用var初始化列表

语法

var listName = list.List

说明

通过 list.List 初始化了一个名为 listName 的列表。

案例

list.New创建列表

通过 list.New 创建列表

package main import ( "container/list" "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //通过 list.New 创建列表 listHaiCoder := list.New() listHaiCoder.PushBack("Hello") listHaiCoder.PushBack("HaiCoder") fmt.Println(listHaiCoder) }

程序运行后,控制台输出如下:

93 golang列表list.png

我们通过 list.New 创建了一个列表 listHaiCoder,并使用 PushBack 向列表中插入两个元素。

使用var创建列表

使用 var 关键字初始化列表

package main import ( "container/list" "fmt" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //使用var关键字初始化列表 var listHaiCoder list.List listHaiCoder.PushBack("Hello") listHaiCoder.PushBack("HaiCoder") fmt.Println(listHaiCoder) }

程序运行后,控制台输出如下:

94 golang列表list.png

使用 var 关键字初始化列表 listHaiCoder,并使用 PushBack 向列表中插入两个元素。

获取列表类型

使用 TypeOf() 函数,获取列表类型

package main import ( "container/list" "fmt" "reflect" ) func main() { fmt.Println("嗨客网(www.haicoder.net)") //使用 TypeOf() 函数,获取列表list类型 var listHaiCoder list.List listHaiCoder.PushBack("HaiCoder") fmt.Println(reflect.TypeOf(listHaiCoder)) }

程序运行后,控制台输出如下:

95 golang列表list.png

使用 TypeOf() 函数,获取列表类型。

Go语言列表list总结

在 Go 语言中,列表使用 container/list 包来实现,内部的实现原理是双链表,列表能够高效地进行任意位置的元素插入和删除操作。

Golang 中的列表可以存储任意数据类型的值,列表的初始化有两种方式,分别为:使用 list.New 初始化和使用 var 初始化。使用 list.New 初始化列表语法:

listName := list.New()

使用 var 初始化列表:

var listName = list.List