Go扩展包(十四):bigCache

1. 介绍 BigCache 是一个快速,支持并发访问,自淘汰的内存型缓存,可以在存储大量元素的同时依然保持高性能。BigCache将元素保存在堆上却避免了GC的

Go扩展包(十三):zap

1.介绍 Zap是uber开源的日志库,支持日志级别分级 、结构化记录,对性能和内存分配做了极致的优化。目前 Star 12.8 源码地址: https://github.com/uber-go/zap 官方性能测试图 2.安

Go扩展包(十二):unicode

1.介绍 unicode包提供了诸多处理rune字符相关功能的函数(比如区分字母和数字,或者是字母的大写和小写转换等) 2.判断函数 2.1 是否为空格

Go扩展包(十一):sort

1.介绍 sort包实现了四种基本排序算法:插入排序、归并排序、堆排序、快速排序。 但是这四种排序方法是不公开的,它们只能在 sort 包内部使用。sor

Go扩展包(十):viper

1.介绍 Viper是适用于Go应用程序(包括Twelve-Factor App)的完整配置解决方案。它被设计用于在应用程序中工作,并且可以处理

Go扩展包(九):flag

1.介绍 在 Go中,如果要接收命令行参数,需要使用 flag包进行解析。不同的参数类型可以通过不同的方法接收。 2.参数接受 2.1 接受方式 使用flag

Go扩展包(八):sync

1.介绍 sync包提供了互斥锁。除了Once和WaitGroup类型,其余多数适用于低水平的程序,多数情况下,高水平的同步使用channel

Go扩展包(三):time(时间包)

1.获取时间 1.1 当前时间 1 2 3 4 5 6 7 8 9 10 11 12 13 14 unix := time.Now().Unix() fmt.Printf("当前时间戳(单位秒): %v \n",unix) nano := time.Now().UnixNano() fmt.Printf

Go扩展包(二):strconv(字符串转换)

1.转换成其他类型(Parse类函数) 1.1 转换成整型(Atoi) 1.语法 1 func Atoi(s string) (int, error) 2.使用示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 package main import ( "fmt" "strconv" ) func main()

Go工具(一):gvm

1. 什么是Gvm Go 语言版本管理器(Gvm)是管理 Go 语言环境的开源工具。Gvm 「pkgsets」 支持安装多个版本的 Go 并管理每个项目的模块。它最初

Go实操(四):遍历使用

1. 遍历字符串(string) 1.1 统计长度后遍历 1 2 3 4 5 6 7 8 func ForString() { str := "hello word" //1.统计长度后遍历 length := len(str) for i := 0; i < length; i++{ fmt.Printf(

Go实操(三):Map使用

1.创建 1 countryMap = make(map[string]string) 2.插入 1 2 /* map 插入 key-value */ countryMap["ShengRI"] = "1988-04-09" 3.取值 1 2 3 4 5 /* 使用 key 输出 map 值 */ for country := range countryMap { fmt.Println("Capital of",country,"is",countryMap[country]) } 4.key是否存在 1 2 3 4 5 6 7 8 /* 查看

Go实操(二):时间处理

1.获取当前时间戳 1 fmt.Println(time.Now().Unix()) //1561713322 2.格式化时间 1 2 3 4 5 6 7 8 9 10 11 12 13 14 fmt.Println("时间:",time.Now().

Go学习(二十七):反射使用

1.介绍 Go语言实现了反射,所谓反射就是动态运行时的状态。我们一般用到的包是reflect包,reflect 实现了运行时的反射能力,能够让程