文章分类 -  Golang之路

关于go语言的学习笔记
摘要:进行md5加密 阅读全文
posted @ 2019-05-30 17:46 Jin同学 阅读(99) 评论(0) 推荐(0)
摘要:冒泡排序 冒泡排序,先将最大(或者最小)的数排到最后,然后最后一位不需要比较,所以在下一次循环的时候,可以少比较一次,因此在第二层循环哪里,循环终止的标志是数组长度减去最外层循环的次数也就是上面的len(a) - i - 1 选择排序 选择排序,即每次选出最大或者最小的数 插入排序 插入排序即先以数 阅读全文
posted @ 2019-05-24 17:50 Jin同学 阅读(142) 评论(0) 推荐(0)
摘要:安装 连接mysql insert操作 select操作 update操作 delete操作 阅读全文
posted @ 2019-05-24 17:45 Jin同学 阅读(170) 评论(0) 推荐(0)
摘要:http编程 Go原生支持http:import("net/http") Go的http服务性能和nginx比较接近 几行代码就可以实现一个web服务 Go原生支持http:import("net/http") Go的http服务性能和nginx比较接近 几行代码就可以实现一个web服务 http 阅读全文
posted @ 2019-05-24 17:43 Jin同学 阅读(149) 评论(0) 推荐(0)
摘要:单元测试 文件名必须以 _test.go结尾 例如现在有一个文件calc.go,里面定义一个add()方法,现在要测试 calc.go calc_test.go 阅读全文
posted @ 2019-05-24 17:30 Jin同学 阅读(102) 评论(0) 推荐(0)
摘要:定时器原理 定时器的原理非常简单,t.C是一个channel,在使用的时候先使用for循环阻塞住channel,再每隔设定的时间间隔往channel里面写数据,然后for循环那里再读出来即可 阅读全文
posted @ 2019-05-24 17:27 Jin同学 阅读(152) 评论(0) 推荐(0)
摘要:并发和并行 多个线程在一个核的cpu上运行,就是并发 多个线程在多个核的cpu上运行,就是并行 多个线程在一个核的cpu上运行,就是并发 多个线程在多个核的cpu上运行,就是并行 协程和线程 协程:独立的栈空间,共享堆空间,调度由用户自己控制,本质上有点类似于用户级线程,这些用户级线程的调度也是自己 阅读全文
posted @ 2019-05-24 17:23 Jin同学 阅读(475) 评论(0) 推荐(0)
摘要:定义错误 上面的error类型其实是一个接口 我们可以实现它的Error()方法继承这个接口,自定义错误类型 阅读全文
posted @ 2019-05-24 17:08 Jin同学 阅读(168) 评论(0) 推荐(0)
摘要:os.Args os.Args是一个string的切片,用来储存所有的命令行参数 如果用户没有输入参数也会有一个参数,就是当前程序 flag包的使用 flag包用来解析命令行参数 例: 输入示例: main.exe -c hhhhh -d 100 阅读全文
posted @ 2019-05-24 17:02 Jin同学 阅读(339) 评论(0) 推荐(0)
摘要:终端读写 操作终端相关的文件句柄常量 os.Stdin:标准输入 os.Stdout:标准输出 os.Stderr:标准错误输出 终端读写示例 带缓存区的读写 文件读取 os.File封装所有文件相关的操作,之前的os.Stdin,os.Stdout,os.Stderr都是*os.File 打开一个 阅读全文
posted @ 2019-05-24 16:57 Jin同学 阅读(92) 评论(0) 推荐(0)
摘要:反射 可以在运行时动态的获取变量的相关信息 Import("reflect") 两个函数 reflect.TypeOf 获取变量的类型 reflect.ValueOf 将其他类型转换成reflect包的reflect.Value类型,就可以使用很多方法了 通过反射来改变变量的值 reflect.Va 阅读全文
posted @ 2019-05-24 16:35 Jin同学 阅读(139) 评论(0) 推荐(0)
摘要:结构体 结构体struct 用来定义复杂的数据结构 struct里面可以包含多个字段(属性) struct类型可以定义方法,注意和函数的区别 struct类型是值类型 struct类型可以嵌套 Go语言没有class类型,只有struct类型 用来定义复杂的数据结构 struct里面可以包含多个字段 阅读全文
posted @ 2019-05-23 22:39 Jin同学 阅读(598) 评论(0) 推荐(0)
摘要:数组 数组是同一种数据类型的固定长度的序列 数组定义:var a [len]int,比如:var a [6]int,长度一旦定义不能改变 长度是数组类型的一部分,因此,var a [5]int 和 var a [10]int 是不同的类型 数组可以通过下标进行访问,下标是从0 开始,最后一个元素的下 阅读全文
posted @ 2019-05-23 22:17 Jin同学 阅读(190) 评论(0) 推荐(0)
摘要:内置函数 close 主要用来关闭channel len 用来求长度,比如string,array,slice,map,channel new 用来分配内存,主要用来分配值的类型,比如int、struct,返回的是指针 make 用来分配内存,主要分配引用类型,比如chan、map、slice ap 阅读全文
posted @ 2019-05-23 22:15 Jin同学 阅读(155) 评论(0) 推荐(0)
摘要:if / else 分支判断 switch case语句 go里面的switch不需要break,即使不加break执行当前语句后也不会往下执行 fallthrough 如果在执行某个case里面的语句后,想继续执行下一个case的语句,可以使用fallthrough 多条件判断 一段范围内进行判断 阅读全文
posted @ 2019-05-23 21:59 Jin同学 阅读(110) 评论(0) 推荐(0)
摘要:函数声明 func 函数名字(参数列表) (返回值列表) {} eg: golang函数特点 不支持重载,一个包不能有两个名字一样的函数 函数是一等公民,函数也是一种类型,一个函数可以赋值给变量 支持匿名函数,函数可以没有名字 多返回值 不支持重载,一个包不能有两个名字一样的函数 函数是一等公民,函 阅读全文
posted @ 2019-05-23 21:49 Jin同学 阅读(85) 评论(0) 推荐(0)
摘要:字符串操作 字符串拼接 求字符串长度 字符串切片 字符串反转 strings和strconv的使用 strings.HasPrefix(s string, prefix string) bool 判断字符串s是否以prefix开头 strings.HasSuffix(s string, suffix 阅读全文
posted @ 2019-05-23 19:30 Jin同学 阅读(63) 评论(0) 推荐(0)
摘要:一般 布尔 整数 浮点数及其复合构成 字符串与字节切片 指针 其他标记 阅读全文
posted @ 2019-05-23 18:57 Jin同学 阅读(492) 评论(0) 推荐(0)
摘要:iota枚举 iota常量自动生成器,每隔一行自动累加一 iota给常量赋值使用 iota遇到const,重置为0 可以只写一个iota 如果是同一行,值都一样 变量类型 bool类型 浮点型 字符类型 字符串类型 时间和日期类型 time包 time.Time类型,用来表示时间 获取当前时间 no 阅读全文
posted @ 2019-05-23 18:31 Jin同学 阅读(136) 评论(0) 推荐(0)