在go语言中,可以利用PushFrontList()函数和PushBackList()函数来向列表中添加列表。PushFrontList()函数可以在列表头部插入另一个列表,语法“列表变量.PushFrontList(要插入的列表)”;PushBackList()函数可以在列表尾部插入另一个列表,语法“列表变量.PushBackList(要插入的列表)”。

本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。

Golang 的 列表 除了支持 插入元素 外,还可以将整个列表插入到另一个列表中。在一个列表中插入另一个列表,只支持两种情况,分别为:在头部插入列表和在尾部插入列表。

在头部插入列表

在Go中,可以利用PushFrontList()函数来在列表头部插入另一个列表。

语法

PushFrontList(other *List)
参数描述
other要插入的列表。

说明:

  • 在列表的头部插入列表 other。

示例:使用 PushFrontList 在列表头部插入一个列表

package main
import (
	"container/list"
	"fmt"
)
func main() {
	//使用 PushFrontList 在列表头部插入一个列表
	listHaiCoder := list.New()
	listHaiCoder.PushFront("Hello")
	listHaiCoder.PushFront("HaiCoder")
	listInsert := list.New()
	listInsert.PushBack("你好")
	listInsert.PushBack("hi")
	listHaiCoder.PushFrontList(listInsert)
	for i := listHaiCoder.Front(); i != nil; i = i.Next() {
		fmt.Println("Element =", i.Value)
	}
}

1.png

分析:

  • 我们通过 list.New 创建了两个列表分别为 listHaiCoder 和 listInsert,接着使用 PushFront 函数和 PushBack 函数分别为两个列表插入元素。

  • 最后,我们使用 PushFrontList 将列表 listInsert 的所有元素插入到列表 listHaiCoder 的头部,最后,我们打印最终的列表,发现 listInsert 的元素排在了整个列表的最前面。

在尾部插入列表

在Go中,可以利用PushBackList()函数来在列表尾部插入另一个列表。

语法

PushBackList(other *List)

说明:

  • 在列表的尾部插入列表 other。

示例:使用 PushBackList 在列表尾部插入一个列表

package main
import (
	"container/list"
	"fmt"
)
func main() {
	//使用 PushBackList 在列表尾部插入一个列表
	listHaiCoder := list.New()
	listHaiCoder.PushFront("Hello")
	listHaiCoder.PushFront("HaiCoder")
	listInsert := list.New()
	listInsert.PushBack("你好")
	listInsert.PushBack("hi")
	listHaiCoder.PushBackList(listInsert)
	for i := listHaiCoder.Front(); i != nil; i = i.Next() {
		fmt.Println("Element =", i.Value)
	}
}

2.png