
L_Golang
文章平均质量分 54
chao2016
容易干不成大业绩!
展开
-
Golang: 安装配置
1. 安装Golang下载地址:https://golang.google.cn/dl/wget https://dl.google.com/go/go1.10.3.darwin-amd64.tar.gztar -zxvf go1.4.linux-amd64.tar.gz -C /usr/local vim ~/.bash_profileexport GOROOT=/usr/loc...原创 2018-07-30 21:09:47 · 3561 阅读 · 0 评论 -
Golang: 分布式爬虫项目
1. 获得初始页面的全部内容func determineEncoding(r io.Reader) encoding.Encoding { // Peek 返回缓存的一个切片,该切片引用缓存中前 n 字节数据, // 该操作不会将数据读出,只是引用,引用的数据在下一次读取操作之前是有效的 // 如果引用的数据长度小于 n,则返回一个错误信息;如果 n 大于缓存的总大小,...原创 2018-08-15 07:07:39 · 5878 阅读 · 4 评论 -
Golang: 函数式编程
函数式编程 vs 函数指针函数式一等公民:参数,变量,返回值都可以是函数高阶函数函数->闭包“正统”函数式编程不可变性:不能有状态,只有常量和函数函数只能有一个参数golang没有以上规定golang闭包的应用更为自然,不需要修饰如何访问自由变量没有lambda表达式,但是有匿名函数1. 示例代码:实现斐波那契数列1.1 functio...原创 2018-08-10 10:14:31 · 3524 阅读 · 0 评论 -
Golang: 面向接口
go语言的duck typing:具有python,cpp的duck typing的灵活性又具有java的类型检查接口变量里有什么?实现者的类型实现者的值(或指针指向实现者)注意:接口变量里自带指针,接口变量本身采用值传递,几乎不需要使用接口的指针指针接收者实现只能以指针方式使用;值接收者都可以查看接口变量的两种方法:Type AssertionT...原创 2018-08-10 09:30:57 · 2325 阅读 · 1 评论 -
Golang: 面向对象
首先声明,Golang不能算是一种面向对象的语言。因为:golang只支持封装,不支持继承和多态golang只有struct,没有class结构(struct)创建在堆上还是栈上?cpp中,局部变量分配在栈上,在外界也要使用的变量要分配到堆上,并且要手动释放java中,对象都分配在堆上,有对应的垃圾回收机制go中不需要知道分配在堆上还是栈上。比如返回了局部变量的地址,那么是...原创 2018-08-10 09:14:05 · 2462 阅读 · 0 评论 -
Golang: 字符串
Golang中的内建变量类型有:byte字节,rune字符 rune:(相当于go的char)使用range遍历pos-rune对使用utf8.RuneCountInString获得字符数量使用len获得字节长度使用[]byte获得字节其他字符串操作:Fields, Split, JoinContains, IndexTolower, ToUpperTrim, Tr...原创 2018-08-09 15:11:22 · 1972 阅读 · 0 评论 -
Golang: 内建容器
内建容器有数组和Map 这里讲三个概念:数组、切片、Map1. 数组arrays.go:2. 切片(Slice)2.1 slices.go:2.2 sliceops.go:3. Mapmaps.go:1. 数组数组是值类型[10]int和[20]int是不同的类型调用func f(arr [10]int)会拷贝数组。想改变原数组的值,用指针类...原创 2018-08-09 15:05:38 · 2846 阅读 · 0 评论 -
Golang: 函数和指针
函数要点返回值类型写在最后面可返回多个值函数作为参数没有默认参数、可选参数等,只有可变参数列表func.go:package mainimport ( "fmt" "reflect" "runtime" "math")// 函数要点// 1. 返回值类型写在最后面// 2. 可返回多个值原创 2018-08-09 09:47:16 · 4585 阅读 · 0 评论 -
Golang: 条件和循环
条件、循环要点for, if后面的条件没有括号if条件里也可以定义变量没有whileswitch不需要break,也可以直接switch多个条件1. branch.go:package mainimport ( "io/ioutil" "fmt")// switch会自动break,除非使用fallthrough;可以swich多条件;panic...原创 2018-08-09 08:59:35 · 3836 阅读 · 0 评论 -
Golang: 变量定义
变量定义要点:变量类型写在变量名之后编译器可推测变量类型没有char,只有rune原生支持复数类型内建变量类型:bool, string(u)int, (u)int8, (u)int16, (u)int32, (u)int64, uintptr(指针)byte, rune(就是char类型,为了应付多语言的一字节来设计,32位,与int32可混用)float32, f...原创 2018-08-09 07:59:34 · 3706 阅读 · 0 评论 -
Golang: 外部排序项目
单机版外部排序网络版外部排序1. channel通信// 向channel中发送数据func ArraySource(a ...int) <-chan int { // 调用的真实情况是,函数新建一个channel并马上返回,并行的goroutine来进行发送数据的操作,发送完后记得close。 // func: 1.新建一个channel out...原创 2018-08-13 22:47:49 · 2711 阅读 · 0 评论