Golang
qq_489366879
这个作者很懒,什么都没留下…
展开
-
Golang regexp包中的函数和方法
------------------------------------------------------------// 判断在 b 中能否找到正则表达式 pattern 所匹配的子串// pattern:要查找的正则表达式// b:要在其中进行查找的 []byte// matched:返回是否找到匹配项// err:返回查找过程中遇到的任何错误// 此函数通过原创 2017-10-06 21:36:46 · 486 阅读 · 0 评论 -
Golang - unicode 包
------------------------------------------------------------const ( MaxRune = '\U0010FFFF' // Unicode 码点的最大值 ReplacementChar = '\uFFFD' // 表示无效的码点 MaxASCII = '\u007F' // 最大转载 2017-10-09 15:09:35 · 421 阅读 · 0 评论 -
Golang - 正则表达式
------------------------------单一: . 匹配任意一个字符,如果设置 s = true,则可以匹配换行符 [字符类] 匹配“字符类”中的一个字符,“字符类”见后面的说明 [^字符类] 匹配“字符类”外的一个字符,“字符类”见后面的说明转载 2017-10-09 15:16:44 · 380 阅读 · 0 评论 -
Golang - unicode/utf16 包
------------------------------------------------------------// IsSurrogate 判断 r 是否为代理区字符// 两个代理区字符可以用来组合成一个 utf16 编码func IsSurrogate(r rune) bool// EncodeRune 将字符 r 编码成 UTF-16 代理对// r:要编码的字符//转载 2017-10-09 15:24:58 · 638 阅读 · 0 评论 -
Golang - unicode/utf8 包
------------------------------------------------------------// 编码所需的基本数字const ( RuneError = '\uFFFD' // 错误的 Rune 或 Unicode 代理字符 RuneSelf = 0x80 // ASCII 字符范围 MaxRune = '\U0010FFFF'转载 2017-10-09 15:28:11 · 1312 阅读 · 0 评论 -
Golang - regexp 包
------------------------------------------------------------// 函数// 判断在 b(s、r)中能否找到 pattern 所匹配的字符串func Match(pattern string, b []byte) (matched bool, err error)func MatchString(pattern string,转载 2017-10-09 15:30:56 · 305 阅读 · 0 评论 -
Golang - strconv 包
------------------------------------------------------------// 将布尔值转换为字符串 true 或 falsefunc FormatBool(b bool) string// 将字符串转换为布尔值// 它接受真值:1, t, T, TRUE, true, True// 它接受假值:0, f, F, FALSE, false转载 2017-10-09 18:05:35 · 312 阅读 · 0 评论 -
Golang - strings 包
------------------------------------------------------------strings 包与 bytes 包中的函数用法基本一样,不再赘述。只对 Replacer 进行说明。------------------------------------------------------------// 转换func ToUpper(s转载 2017-10-09 18:32:09 · 225 阅读 · 0 评论 -
基础知识 - 字符编码简介
字符编码简介一、字节 字节是计算机中存储数据的最小单位,一个字节有 8 个位(即二进制位,也叫 bit),可以表示 0~255 之间的任何一个数(即二进制的 00000000 到 11111111 之间)。你可以用字节表示任何东西,比如数字、字符、图像、音乐等,这取决于你如何解释这个字节。二、ASCII 字符集 在标准 ASCII 码中,用一个字节来表示不同的字符,字节的最高位转载 2017-10-09 18:44:57 · 333 阅读 · 0 评论 -
golang - time包
Time时间类型,包含了秒和纳秒以及LocationMonthtype Month int 月份.定义了十二个月的常量Weekdaytype Weekday int 周,定义了一周的七天Durationtype Duration int64 持续时间.定义了以下持续时间类型.多用于时间的加减 需要传入Duration做为参数的时候.可以直接传入time.Second...转载 2018-09-06 17:35:59 · 195 阅读 · 0 评论 -
Golang — new与make
Go语言中的内建函数new和make是两个用于内存分配的原语(allocation primitives)。对于初学者,这两者的区别也挺容易让人迷糊的。简单的说,new只分配内存,make用于slice,map,和channel的初始化。1. new这是一个用来分配内存的内建函数,但是与C++不一样的是,它并不初始化内存,只是将其置零。也就是说,new(T)会为T类型的新项目,分配被置零的转载 2017-10-09 19:37:51 · 248 阅读 · 0 评论 -
Golang — Channel&Goroutine
1. 概述“网络,并发”是Go语言的两大feature。Go语言号称“互联网的C语言”,与使用传统的C语言相比,写一个Server所使用的代码更少,也更简单。写一个Server除了网络,另外就是并发,相对python等其它语言,Go对并发支持使得它有更好的性能。Goroutine和channel是Go在“并发”方面两个核心feature。Channel是goroutine之间进行通信的...转载 2018-09-06 17:34:42 · 231 阅读 · 0 评论 -
Golang - io 包
------------------------------------------------------------ 先说一下接口,Go 语言中的接口很简单,在 Go 语言的 io 包中有这样一个函数:func ReadFull(r Reader, buf []byte) (n int, err error) 这个函数可以把对象 r 中的数据读出来,然后存入一个缓冲区 b转载 2017-10-09 14:55:25 · 281 阅读 · 0 评论 -
Golang - io/ioutil 包
------------------------------------------------------------// Discard 是一个 io.Writer 接口,调用它的 Write 方法将不做任何事情// 并且始终成功返回。var Discard io.Writer = devNull(0)// ReadAll 读取 r 中的所有数据,返回读取的数据和遇到的错误。//转载 2017-10-08 17:17:44 · 395 阅读 · 0 评论 -
Golang - bufio 包
------------------------------------------------------------// bufio 包实现了带缓存的 I/O 操作------------------------------------------------------------type Reader struct { ... }// NewReaderSize 将 rd转载 2017-10-08 16:42:24 · 238 阅读 · 0 评论 -
Golang http 建立Web服务器
在浏览器中先后输入http://localhost:9090http://localhost:9090/?url_long=111&url_long=222输出到浏览器的内容是: Hello astaxie!服务器端的控制台的输出:G:\Users\chenjo>go run web.gomap[]path /scheme原创 2017-10-07 19:42:15 · 526 阅读 · 0 评论 -
Golang json用法详解
Golang解析JSON之Tag篇1. 一个结构体正常序列化过后是什么样的呢?package mainimport ( "encoding/json" "fmt")// Product 商品信息type Product struct { Name string ProductID int64 Number int原创 2017-10-07 20:50:06 · 1058 阅读 · 0 评论 -
Golang - bytes 包
------------------------------------------------------------对于传入 []byte 的函数,都不会修改传入的参数,返回值要么是参数的副本,要么是参数的切片。------------------------------------------------------------// 转换// 将 s 中的所有字符修改为大写(转载 2017-10-07 23:22:01 · 177 阅读 · 0 评论 -
Golang - sort 包
// 满足 Interface 接口的类型可以被本包的函数进行排序。type Interface interface { // Len 方法返回集合中的元素个数 Len() int // Less 方法报告索引 i 的元素是否比索引 j 的元素小 Less(i, j int) bool // Swap 方法交换索引 i 和 j 的两个元素的位置 S转载 2017-10-07 23:44:48 · 336 阅读 · 0 评论 -
Golang - sync 包
临时对象池 Pool 用于存储临时对象,它将使用完毕的对象存入对象池中,在需要的时候取出来重复使用,目的是为了避免重复创建相同的对象造成 GC 负担过重。其中存放的临时对象随时可能被 GC 回收掉(如果该对象不再被其它变量引用)。 从 Pool 中取出对象时,如果 Pool 中没有对象,将返回 nil,但是如果给 Pool.New 字段指定了一个函数的话,Pool 将使用该函数创建一个转载 2017-10-08 00:01:48 · 202 阅读 · 0 评论 -
Golang - unsafe 包
指针类型:*类型:普通指针,用于传递对象地址,不能进行指针运算。unsafe.Pointer:通用指针类型,用于转换不同类型的指针,不能进行指针运算。uintptr:用于指针运算,GC 不把 uintptr 当指针,uintptr 无法持有对象。uintptr 类型的目标会被回收。 unsafe.Pointer 可以和 普通指针 进行相互转换。 unsafe.Point转载 2017-10-08 00:31:55 · 190 阅读 · 0 评论 -
Golang - errors 包
Go 语言使用 error 类型来返回函数执行过程中遇到的错误,如果返回的 error 值为 nil,则表示未遇到错误,否则 error 会返回一个字符串,用于说明遇到了什么错误。其实 error 只是一个接口,定义如下:------------------------------type error interface { Error() string}-------转载 2017-10-08 00:40:39 · 218 阅读 · 0 评论 -
Golang - reflect 包
------------------------------------------------------------ 在 reflect 包中,主要通过两个函数 TypeOf() 和 ValueOf() 实现反射,TypeOf() 获取到的结果是 reflect.Type 类型,ValueOf() 获取到的结果是 reflect.Value 类型,这两种类型都有很多方法可以进一步获取相关转载 2017-10-08 01:01:28 · 363 阅读 · 0 评论 -
Golang - path/filepath 包
------------------------------------------------------------ filepath 中的函数会根据不同平台做不同的处理,比如路径分隔符、卷名等。------------------------------------------------------------路径分隔符转换:const ( Separa转载 2017-10-08 01:25:05 · 1518 阅读 · 0 评论 -
Golang - fmt 包
------------------------------------------------------------// Print 将参数列表 a 中的各个参数转换为字符串并写入到标准输出中。// 非字符串参数之间会添加空格,返回写入的字节数。func Print(a ...interface{}) (n int, err error)// Println 功能类似 Pr转载 2017-10-08 01:38:12 · 225 阅读 · 0 评论 -
Golang - 格式化输入输出
------------------------------------------------------------【格式化输出】// 格式化输出:将 arg 列表中的 arg 转换为字符串输出// 使用动词 v 格式化 arg 列表,非字符串元素之间添加空格Print(arg列表)// 使用动词 v 格式化 arg 列表,所有元素之间添加空格,结尾添加换行符Println(a转载 2017-10-08 13:12:09 · 878 阅读 · 0 评论 -
golang — 接口
概述如果说goroutine和channel是Go并发的两大基石,那么接口是Go语言编程中数据类型的关键。在Go语言的实际编程中,几乎所有的数据结构都围绕接口展开,接口是Go语言中所有数据结构的核心。Go语言中的接口是一些方法的集合(method set),它指定了对象的行为:如果它(任何数据类型)可以做这些事情,那么它就可以在这里使用。 type Reader interfac...转载 2018-09-06 17:35:19 · 161 阅读 · 0 评论