Go语言基础 | 青训营笔记

321 阅读1分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第1天。

一、变量类型

1.Go是强类型语言。

2.字符串是内置类型,可以用 + 拼接。

3.变量声明的两种方式

屏幕截图_20230115_200309.png

如果需要,可以在变量名后面显式的指出变量类型。

4.const常量没有确定的类型。

屏幕截图_20230115_200722.png

二、循环

for循环的任意部分都可以省略。

屏幕截图_20230115_201004.png

三、switch

屏幕截图_20230115_201302.png

1.case里不需要break,走完其中一个分支就结束,而不是走完下面的全部分支。

2.变量a可以是任意类型,可以是结构体。

3.不填变量a,替换if-else结构。

屏幕截图_20230115_201538.png

四、数组

屏幕截图_20230115_222110.png

五、切片

1.可变长度的数组。

2.append追加元素,必须把append结果赋值回原数组,因为其本质是指针。

3.copy拷贝数组。

屏幕截图_20230115_221949.png

六、map

屏幕截图_20230115_222250.png

1.map[key的类型]value的类型。

2.ok用来获取这个map里面有没有"unknow"这个key存在。

七、range

屏幕截图_20230115_222558.png

1.range用在数组,返回两个值,第一个是索引,第二个是对应位置的值。

2.用在map,第一个值是key,第二个是value。

八、结构体

屏幕截图_20230115_222939.png

1.三种初始化结构体的方法,如果指出了初始化的字段名,可以不全部初始化。

2.结构体方法

屏幕截图_20230115_223637.png

九、错误处理

函数可以返回错误信息。

屏幕截图_20230115_223744.png

十、字符串操作

屏幕截图_20230115_223934.png

字符串格式化

屏幕截图_20230115_224131.png

十一、JSON操作

保证结构体的每个字段的第一个字母大写。

屏幕截图_20230115_224430.png

Age int 'json:"age"' 指定转换到JSON后Age显示为age。

十二、时间处理

屏幕截图_20230115_224651.png

十三、数字解析

屏幕截图_20230115_224800.png

1.10表示十进制,0表示自动推测,64表示64位精度。

2.Rtoa把数字转为字符串,

十四、进程信息

屏幕截图_20230115_225051.png

1.os.Args进程执行时的命令行参数。

2.exec.Command启动子进程。