首页 > 其他分享 >golang的list数据结构demo

golang的list数据结构demo

时间:2023-07-12 20:24:58浏览次数:49  
标签:mylist nil grpc demo list Value Next golang

package main
import "container/list"
func main(){    var mylist list.List
//放在尾部 mylist.PushBack("go") mylist.PushBack("grpc") mylist.PushBack("mysql")
//头部放数据 mylist.PushFront("gin")
//在grpc前插入元素java i := mylist.Front() for ; i != nil; i = i.Next() { if i.Value.(string) == "grpc" { break } } mylist.InsertBefore("java", i)
//删除grpc元素 i := mylist.Front() for ; i != nil; i = i.Next() { if i.Value.(string) == "grpc" { break } } mylist.Remove(i)
//遍历打印值,正序 for i := mylist.Front(); i != nil; i = i.Next() { fmt.Println(i.Value) }
//反向遍历 for i := mylist.Back(); i != nil; i = i.Prev() { fmt.Println(i.Value) }
}

 

标签:mylist,nil,grpc,demo,list,Value,Next,golang
From: https://www.cnblogs.com/nLesxw/p/golist.html

相关文章

  • golang channel Synchronization
    在Go语言中,通道(channel)是一个很重要的并发同步机制,可以用来在不同的goroutine之间发送和接收数据。通道实现了一个先进先出(FIFO)的数据结构,所以可以确保数据的接收顺序与发送顺序一致。此外,通道的发送和接收操作都是原子的,这意味着你不需要额外的锁来同步数据访问。这里有几......
  • 跟着 GPT-4 从0到1学习 Golang 并发机制(二)
    btw:我的个人博客网站目录一、前言二、开聊2.1Golang中的sync包-Mutex,RWMutex和WaitGroup2.2条件变量sync.Cond2.3sync.Cond的Broadcast()方法2.4原子操作Atomic2.5context包三、总结一、前言话接上回《跟着GPT-4从0到1学习Golang并发机制(一)》,我想......
  • windows下rclone挂在alist
    相比RaiDrive,rclone开源、免费、无广告、无弹窗。在使用上,rclone可能比RaiDrive卡顿。原因是rclone启动参数没设置好。把rclone的启动命令换成下面这个,将使rclone流畅度提升数倍。.\rclonemountalist:M:--network-mode--header"Referer:"--multi-thread-streams8--bu......
  • todoList
    <scriptsetup>import{ref}from"vue";consttodo=ref("");consttodoList=ref([]);constaddTodo=()=>{ todoList.value.push({todoName:todo.value,status:false}); todo.value="";}constdeleteTodo=()......
  • 跟着 GPT-4 从0到1学习 Golang 并发机制(一)
    目录一、前言二、开聊2.1Golang里的并发机制介绍2.2Goroutine与线程2.3Goroutine与线程的调度开销2.4用户态和内核态2.5Golang并发编程相关的知识点2.6Select语句2.7Select语句的default使用场景三、总结一、前言今天玩点不一样的,我想试试看GPT-4能不能当好一......
  • Golang学习笔记-判断
    判断有两种:if和switchif判断if用于条件判断,它会按照顺序一次执行,当if条件及elseif条件都不成立,则会执行else部分的逻辑语法if条件判断{...}elseif条件判断{...}else{...}栗子varmoneyint=18ifmoney>0&&money<=1000{fmt.Pri......
  • CMakeLists编译静态库与动态库
    一、编写一个库编写一个计算整数和浮点数之和的库函数mymath,文件目录 mymath.h#ifndefMYMATH_H#defineMYMATH_H intadd(int,int);doubleadd(double,double); #endifmymath.cc#include"mymath.h" intadd(inta,intb){  returna+b;} doubleadd(doublea,d......
  • Rust 使用egui创建一个简单的下载器demo
    仓库连接:https://github.com/GaN601/egui-demo-download-util这是我第一个rustguidemo,学习rust有挺长时间了,但是一直没有落实到实践中,本着对桌面应用的兴趣,考察了slint、egui两种框架,最后还是选择了egui.这篇博客同时包含我当前的一些理解,但是自身技术有限,可......
  • Golang学习笔记-常量
    声明常量声明常量关键字:constconst{常量名}{常量类型}或const{常量名}={常量值}预定义常量预定义常量:true,false,iota其中true,false是布尔类型,iota是一个自增常量,从0开始取值它每出现一次,它自身的值会加1iota用法const{ money0=iota//值为0......
  • Golang学习笔记-变量
    声明变量声明变量关键字varvar{变量名称}{变量类型}例子//声明一个变量为v1的整型变量,未赋值时默认值为0varv1int//声明一个变量为v2的浮点型变量,未赋值时默认值为0varv2float32//声明一个变量为v3的数组变量(数组中的元素为整型),未赋值时默认值为nilvarv3......