![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
golang
文章平均质量分 51
elecjun
这个作者很懒,什么都没留下…
展开
-
golang map实现原理
map如何顺序读取Golang中map的遍历输出的时候是无序的,不同的遍历会有不同的输出结果,如果想要顺序输出的话,需要额外保存顺序,例如使用slice,将slice中排序,再通过slice的顺序去读取。https://studygolang.com/articles/27496?fr=sidebarmap实现Golang采用了HashTable的实现,解决冲突采用的是链地址法。也就是说,使用数组+链表来实现map实现的图示hmap结构// A header for a原创 2022-03-03 18:21:10 · 373 阅读 · 0 评论 -
golang线程安全map
golang安全map使用使用内置sync.Map使用读写锁实现并发安全map读写锁实现并发安全mapimport ( "sync")// SyncMap is a map with locktype SyncMap struct { lock *sync.RWMutex bm map[interface{}]interface{}}// NewSyncMap return new safemapfunc NewSyncMap() *SyncMap { return原创 2022-03-03 17:19:59 · 930 阅读 · 0 评论 -
golang时间日期处理
时间处理import “time”时间戳time.Now().Unix()时间格式化time.Now().Format("2006-01-02 15:04:05")时间点必须为2006-01-02 15:04:05, go语言诞生之日时间戳转字符串格式化时间str_time := time.Unix(1389058332, 0).Format("2006-01-02 15:04:05")fmt.Println(str_time)字符串格式化时间转时间戳the_time, e原创 2022-03-03 15:34:02 · 1172 阅读 · 0 评论 -
golang命名规范
命名规则golang的变量函数命名需要使用驼峰命名法,且不能出现下划线, 文件名使用下划线golang中根据首字母的大小写来确定可以访问的权限。无论是方法名、常量、变量名还是结构体的名称,如果首字母大写,则可以被其他的包访问;如果首字母小写,则只能在本包中使用可以简单的理解成: 首字母大写是公有的,首字母小写是私有的文件的命名,全小写,测试的文件:xxx_test.go包名和文件夹名字最好...原创 2018-08-23 09:35:55 · 15225 阅读 · 0 评论