首页 > 代码库 > go语言从零学起(二)--list结构基本用法
go语言从零学起(二)--list结构基本用法
list,go标准库双向链表结构
定义:
a := list.New()
用法示例:
package main import ( "container/list" "fmt" ) func main() { l := list.New() l.PushBack(1) //插入链表的最后一个位置 l.PushBack(2) l.PushBack(3) l.PushFront(4) //插入链表的第一个位置 i := 1 for e := l.Front(); e != nil; e = e.Next() { fmt.Printf("元素%d:%d\n", i, e.Value) } }
输出结果:
元素1:4 元素2:1 元素3:2 元素4:3
list中元素为struct时,获取元素每项的方式稍微有些区别,示例如下:
package main import ( "container/list" "fmt" ) type User struct { id int name string } func main() { l := list.New() item1 := User{id: 101, name: "name1"} item2 := User{id: 102, name: "name2"} l.PushBack(item1) l.PushBack(item2) i := 1 for e := l.Front(); e != nil; e = e.Next() { fmt.Printf("元素%d: id:%d, name:%s\n", i, e.Value.(User).id, e.Value.(User).name) //先转义后使用 i++ } }
输出为:
元素1: id:101, name:name1 元素2: id:102, name:name2
go语言从零学起(二)--list结构基本用法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。