golang怎么添加list元素

青灯夜游
青灯夜游 原创
2023-01-14 13:57:40 1099浏览

添加方法:1、用InsertBefore()函数在列表指定元素(mark点)前插入元素,语法“InsertBefore(v,mark)”;2、用InsertAfter()函数在列表指定元素(mark点)后插入元素,语法“InsertAfter(v,mark)”;3、用PushBackList(()函数在列表尾部插入元素;4、用PushFrontList()在列表头部插入元素。

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

Golang 的 列表 元素的插入有四种情景,分别为:在指定元素前插入、在指定元素后插入、在列表头部插入和在列表尾部插入。

列表插入元素的方法如下表所示:

方 法功 能
InsertAfter(v interface {}, mark * Element) * Element在 mark 点之后插入元素,mark 点由其他插入函数提供
InsertBefore(v interface {}, mark * Element) *Element在 mark 点之前插入元素,mark 点由其他插入函数提供
PushBackList(other *List)添加 other 列表元素到尾部
PushFrontList(other *List)添加 other 列表元素到头部

下面就来详细介绍一下。

1、在列表指定元素前插入

在节点 mark 前面插入一个元素 v。

语法

InsertBefore(v interface {}, mark * Element) *Element
参数描述
v要插入的元素。
mark列表的节点。
  • 返回值:元素节点。

示例:使用 InsertBefore 在列表的指定元素前插入元素

package main
import (
	"container/list"
	"fmt"
)
func main() {
	//使用 InsertBefore 在列表的指定元素前插入元素
	listHaiCoder := list.New()
	element := listHaiCoder.PushBack("Hello")
	element = listHaiCoder.InsertBefore("world", element)
	listHaiCoder.InsertBefore("你好", element)
	for i := listHaiCoder.Front(); i != nil; i = i.Next() {
		fmt.Println("Element =", i.Value)
	}
}

1.png

分析:

  • 我们通过 list.New 创建了一个列表 listHaiCoder,接着,首先使用 PushBack 在列表尾部插入一个元素,再使用

  • InsertBefore 在刚插入的尾部的元素前面插入一个元素。

2、在列表指定元素后插入

在节点 mark 后面插入一个元素 v。

InsertAfter(v interface {}, mark * Element) *Element

示例:

package main
import (
	"container/list"
	"fmt"
)
func main() {
	//使用 InsertAfter 在列表的指定元素后插入元素
	listHaiCoder := list.New()
	element := listHaiCoder.PushBack("Hello")
	element = listHaiCoder.InsertAfter("world", element)
	listHaiCoder.InsertAfter("你好", element)
	for i := listHaiCoder.Front(); i != nil; i = i.Next() {
		fmt.Println("Element =", i.Value)
	}
}

2.png

分析:

  • 我们通过 list.New 创建了一个列表 listHaiCoder,接着,首先使用 PushBack 在列表尾部插入一个元素,再使用

  • InsertAfter 在刚插入的尾部的元素后面插入一个元素。

3、在列表头部插入

在列表头部插入一个元素 v。

PushFront(v interface{}) *Element

示例:使用 PushFront 在列表头部插入元素

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

3.png

分析:

  • 我们通过 list.New 创建了一个列表 listHaiCoder,接着使用 PushFront 函数在列表的头部连续插入了两个元素。因为我们使用的是头插法,因此最后插入的元素在最前面。

  • 最后,我们 遍历列表 所有元素时,发现,最后插入的元素在最前面。

4、在列表尾部插入

在列表尾部插入一个元素 v。

PushBack(v interface{}) *Element

示例:使用 PushBack 在列表尾部插入元素

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

4.png

分析:我们通过 list.New 创建了一个列表 listHaiCoder,接着使用 PushBack 函数在列表的尾部连续插入了两个元素。因为我们使用的是尾插法,因此最后插入的元素在最后面,最先插入的元素在最前面。

【相关推荐:Go视频教程编程教学

以上就是golang怎么添加list元素的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。