Go语言列表list教程
列表是一种非连续的存储容器,由多个节点组成,节点通过一些 记录彼此之间的关系,列表有多种实现方法,如单链表、双链表等。
在 中,列表使用 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) }
程序运行后,控制台输出如下:
我们通过 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) }
程序运行后,控制台输出如下:
使用 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)) }
程序运行后,控制台输出如下:
使用 TypeOf() 函数,获取列表类型。
Go语言列表list总结
在 Go 语言中,列表使用 container/list 包来实现,内部的实现原理是双链表,列表能够高效地进行任意位置的元素插入和删除操作。
Golang 中的列表可以存储任意数据类型的值,列表的初始化有两种方式,分别为:使用 list.New 初始化和使用 var 初始化。使用 list.New 初始化列表语法:
listName := list.New()
使用 var 初始化列表:
var listName = list.List