GO语言入门
文章平均质量分 86
Golang从入门到精通
Mr_buffoon
远离舒适区
展开
-
Go 语言数据类型
Go 语言按类别有以下几种数据类型:序号 类型和描述 1 布尔型 布尔型的值只可以是常量 true 或者 false。一个简单的例子:var b bool = true。 2 数字类型 整型 int 和浮点型 float32、float64,Go 语言支持整型和浮点型数字,并且原生支持复数,其中位的运算采用补码。 3 字符串类型: 字符串就...转载 2018-09-25 18:46:47 · 237 阅读 · 0 评论 -
Golang bytes包
bytes包主要是提供byte数组的相关处理函数,类似于strings字符串,(后面以字符串称呼)主要包括:比较//比较a与b,相等返回0,a>b则1,a<b则-1func Compare(a, b []byte) int//比较两个字节切片是否相等,如果参数为nil,则等同于空的字节切片func Equal(a, b []byte) bool//字符串s和t比较,它们...原创 2019-03-29 15:04:49 · 623 阅读 · 0 评论 -
Golang strings包
strings包主要是提供string字符串的相关处理函数,主要包括:比较//比较a与b,相等返回0,a>b则1,a<b则-1func Compare(a, b string) int//字符串s和t比较,它们在全部小写的情况下,采用UTF8编码的底层的unicode是否一致func EqualFold(s, t string) bool包含//这个函数主要是用来判断...原创 2019-03-29 14:29:31 · 373 阅读 · 0 评论 -
Go reflect 应用场景实例
reflect包实现了反射机制。首先,reflect包最核心的两个数据类型我们必须知道,一个是Type,一个是Value。Type就是定义的类型的一个数据类型,Value是值的类型。反射就是用来检测存储在接口变量内部(值value;类型concrete type) pair对的一种机制。那么在Golang的reflect反射包中有什么样的方式可以让我们直接获取到变量内部的信息呢? 它提供了两...原创 2019-01-02 20:19:27 · 1433 阅读 · 0 评论 -
Go 文件读写实例
go 文件读写主要有os、io/ioutil、bufio这几个包。io/ioutilio/ioutil包中主要有这几个函数:func ReadAll(r io.Reader) ([]byte, error)ReadAll()主要是用来是从一个打开的io.Reader中读取直到遇到error或EOF并返回读取的数据;成功的读取返回的err为nil,而不是EOF。因为ReadAll定义为从...原创 2019-01-07 10:58:01 · 1765 阅读 · 0 评论 -
golang并发--syn/atomic包
sync/atomic包提供了原子操作,即进行过程中不能被中断的操作。该包提供的可进行原子操作类型包括int32,int64,uint32,uint64,uintptr,unsafe.Pointer,共六个。这些函数提供的原子操作共有五种:增减,比较并交换,载入,存储和交换。增减 Add函数名称都以Add为前缀,并后跟针对的具体类型的名称:func AddInt32(addr *int...原创 2018-12-25 20:14:13 · 1519 阅读 · 0 评论 -
Go 并发常用知识点实例
Go中天然的支持并发,Go允许使用go语句开启一个新的运行期线程,即 goroutine,以一个不同的、新创建的goroutine来执行一个函数。同一个程序中的所有goroutine共享同一个地址空间。Goroutine非常轻量,除了为之分配的栈空间,其所占用的内存空间微乎其微。并且其栈空间在开始时非常小,之后随着堆存储空间的按需分配或释放而变化。内部实现上,goroutine会在多个操作系统线...原创 2018-12-24 16:07:23 · 554 阅读 · 0 评论 -
go常用标准包介绍
go标准库包含很多包,详细见https://golang.org/pkg/下面摘取部分比较常用的说明一下:strings包 :主要是处理字符串的一些函数集合,包括合并、查找、分割、比较、后缀检查、索引、大小写处理等等。strings与bytes的函数接口功能基本一致。bytes包:bytes包提供了对字节切片进行读写操作的一系列函数。 字节切片处理的函数比较多,分为基本处理函数、比较函...原创 2018-12-18 17:10:14 · 1852 阅读 · 0 评论 -
Go fmt 包实例
fmt包提供格式化输入输出,主要有下面几个函数:func Printf(format string, a …interface{}) (n int, err error)func Print(a …interface{}) (n int, err error)func Println(a …interface{}) (n int, err error)func Sprintf(forma...原创 2019-01-03 16:13:12 · 452 阅读 · 0 评论 -
go标准输入输出之占位符
####【简介】fmt 包实现了格式化 I/O 函数,类似于 C 的 printf 和 scanf。格式“占位符”衍生自 C,但比 C 更简单。####【打印】占位符:[一般]%v 相应值的默认格式。在打印结构体时,“加号”标记(%+v)会添加字段名%#v 相应值的 Go 语法表示%T 相应值的类型的 Go 语法表示%% 字面上的百分号,并非值的占位符[布尔]%t 单词 tru...原创 2019-01-03 15:58:25 · 1770 阅读 · 0 评论 -
Go sync/errgroup 实例
golang中增加了一个errgroup包,它在sync.WaitGroup功能的基础上,增加了错误传递,以及在发生不可恢复的错误时取消整个goroutine集合,或者等待超时。其中包含的函数如下:func WithContext(ctx context.Context) (*Group, context.Context)func (g *Group) Go(f func() erro...原创 2018-12-26 15:49:21 · 3042 阅读 · 0 评论 -
go unicode包
转载自https://www.cnblogs.com/golove/p/3273585.html------------------------------------------------------------const ( MaxRune = '\U0010FFFF' // Unicode 码点的最大值 ReplacementChar = '\uFFFD' ...转载 2018-10-07 09:28:56 · 457 阅读 · 0 评论 -
go strconv包
转载自http://www.cnblogs.com/golove/p/3262925.html---------------------------------------------------// 将布尔值转换为字符串 true 或 falsefunc FormatBool(b bool) string// 将字符串转换为布尔值// 它接受真值:1, t, T, TRUE, t...转载 2018-10-07 09:27:08 · 222 阅读 · 0 评论 -
go regexp包
转载自https://www.cnblogs.com/golove/p/3270918.html,仅用做学习记录// 判断在 b(s、r)中能否找到 pattern 所匹配的字符串func Match(pattern string, b []byte) (matched bool, err error)func MatchString(pattern string, s string) ...转载 2018-10-07 09:24:46 · 348 阅读 · 0 评论 -
go中多态的实现
在面向对象编程语言中,一般都有多态的概念,那么在Golang中有没有多态呢?又是如何实现的?Golang中的多态可以通过接口来实现。定义接口的所有方法的任何类型都表示隐式实现该接口。类型接口的变量可以保存实现该接口的任何值。接口的这个属性用于实现GO的多态性。具体直接上代码:package mainimport ( "fmt")type Person interface ...原创 2018-09-25 19:19:38 · 4048 阅读 · 0 评论 -
os/exec 包详解
os/exec 包提供了执行linux命令的相关接口,主要有如下://这个函数主要是用来查询可执行二进制文件的路径func LookPath(file string) (string, error)//这个函数主要是用来初始化一个Cmd指针,Path和Args按参数初始化,其他字段执行默认初始化//初始化后的Cmd用于后续执行run,start等函数func Command(name ...原创 2019-04-01 13:20:35 · 1903 阅读 · 1 评论