
Golang学习
文章平均质量分 69
平什么阿
这个作者很懒,什么都没留下…
展开
-
Golang学习(十):goroutine 和 channel
文章目录1. 需求案例2. goroutine基本介绍2.1 程序、进程和线程2.2 并发和并行2.3 Go 协程和 Go 主线程3. goroutine 快速入门3.1 案例3.2 小结4. goroutine 调度模型 MPG5. 设置Golang运行CPU数6. channel(管道)6.1 需求6.2 使用全局变量加锁改进6.3 为什么需要channel6.4 channel 基本介绍6.5 声明/定义 channel6.6 channel 初始化,写入,读取6.7 channel 关闭、遍历6.原创 2022-05-04 16:17:30 · 908 阅读 · 0 评论 -
Golang学习(九):单元测试
文章目录1. testing2. 总结1. testingpackage cal//一个被测试函数func addUpper(n int) int { res := 0 for i := 1; i <= n - 1; i++ { res += i } return res}//求两个数的查func getSub(n1 int, n2 int) int { return n1 - n2}package calimport ( "fmt" "testing"原创 2022-05-04 14:14:01 · 103 阅读 · 0 评论 -
Golang学习(八):文件操作
文章目录1. 文件的操作2. 打开和关闭文件3. 读取文件并显示到终端3.1 bufio.NewReader(file) 带缓存读取3.2 ioutil.ReadFile(file) 一次性读取4. 写文件操作应用实例4.1 os.OpenFile函数4.2 基本应用实例-方式一4.3 基本应用实例-方式二5. 文件编程应用实例5.1 拷贝文件5.2 统计英文、数字、空格和其他字符数量6. 命令行参数6.1 os.Args6.2 flag包用来解析命令行参数7. json7.1 概述7.2 json 序列化原创 2022-05-04 00:39:44 · 830 阅读 · 0 评论 -
Golang学习(七):面向对象编程
文章目录1. 结构体1.1 结构体内存布局1.2 创建结构体变量和访问结构体字段1.3 内存详解1.4 使用细节2. 方法2.1 声明和调用2.2 方法的调用和传参机制2.3 完整的方法声明和定义2.4 方法使用的注意事项2.5 方法和函数的区别3. 工厂模式4. 面向对象编程思想4.1 抽象4.2 三大特性——封装4.3 三大特性——继承4.4 三大特性——多态4.4.1 接口4.4.2 接口vs继承4.4.3 多态4.5 类型断言1. 结构体go语言结构体和其他语言的类有同等的地位1.1 结构体原创 2022-05-02 21:09:29 · 597 阅读 · 0 评论 -
Golang学习(六):Map
文章目录1. 声明2. 增删改查3. 遍历4. 切片5. 排序6. 使用细节1. 声明var map 变量名[keytype] valuetype注:声明不会分配内存,初始化需要make,分配内存后才能赋值和使用package mainimport ( "fmt")func main() { //map的声明和注意事项 var a map[string]string //在使用map前,需要先make , make的作用就是给map分配数据空间 a = make(map[stri原创 2022-05-02 16:03:47 · 959 阅读 · 0 评论 -
Golang学习(五):数组与切片
文章目录1. 数组1.1 数组定义和内存布局1.2 数组的访问和初始化1.3 数组遍历1.4 数组注意事项2. 切片2.1 切片的内存布局2.2 切片的使用2.3 切片的遍历2.4 使用注意2.5 String 和 slice1. 数组1.1 数组定义和内存布局定义var 数组名 [数组大小]数据类型var a [5]int内存布局① &intArr可以获取地址② 第一个元素地址就是数组的首地址③ 地址间隔由数组类型决定(前一个元素地址,每个元素占用的字节数)1.2原创 2022-05-02 15:47:43 · 398 阅读 · 0 评论 -
Golang学习(四):函数
文章目录1. 基本语法2. 包3. 函数调用4. init函数5. 匿名函数6. 闭包7. defer8. 字符串函数9. 日期和时间函数10. 内置函数11. 错误处理1. 基本语法2. 包区分同名函数、变量、标识符便于管理项目控制作用域允许其他包访问的函数首字母大写支持别名:别名 包路径package mainimport ( "fmt" "go_code/chapter06/fundemo01/utils")func main() { fmt.Println(原创 2022-04-30 17:45:15 · 576 阅读 · 0 评论 -
Golang学习(三):流程控制
文章目录1. if-else2. switch3. for4. break5. continue6. goto1. if-elsepackage mainimport ( "fmt" _ "math")func main(){ //岳小鹏参加Golang考试,他和父亲岳不群达成承诺: // 如果: // 成绩为100分时,奖励一辆BMW; // 成绩为(80,99]时,奖励一台iphone7plus; // 当成绩为[60,80]时,奖励一个 iPad; // 其它时,什么奖励也原创 2022-04-30 16:22:51 · 255 阅读 · 0 评论 -
Golang学习(二):运算符
文章目录1. 算数运算符2. 关系(比较)运算符3. 逻辑运算符4. 赋值运算符5. 位运算符6. 键盘输入语句7. 进制8. 位运算1. 算数运算符package mainimport ( "fmt" )func main() { //重点讲解 /、% //说明,如果运算的数都是整数,那么除后,去掉小数部分,保留整数部分 fmt.Println(10 / 4) var n1 float32 = 10 / 4 // fmt.Println(n1) //如果我们希望保留小原创 2022-04-30 16:04:50 · 244 阅读 · 0 评论 -
Golang学习(一):变量
文章目录1. 变量概述1.1 三种变量声明方式1.2 一次性声明多个变量2. +号的使用3. 数据类型4. 整数类型5. 浮点类型1. 变量概述1.1 三种变量声明方式指定变量类型,声明后若不赋值,使用默认值根据值自行判定变量类型(类型推导)省略var, 注意 :=左侧的变量不应该是已经声明过的,否则会导致编译错误package mainimport "fmt"func main() { //golang的变量使用方式1 //第一种:指定变量类型,声明后若不赋值,使用默认值 //原创 2022-04-30 14:49:07 · 936 阅读 · 0 评论