Golang 笔记1【基础语言】 | 青训营笔记

94 阅读3分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的的第1篇笔记

基础语法

  1. 变量初始化 在初始化时指定类型和初始值,可以省略其中之一。省略类型则根据赋值的类型决定变量类型,省略初始值则根据变量类型赋初始值。也可以使用简短变量声明,通过表达式决定变量的类型。

  2. 循环 循环只用for,循环条件不需要括号,可使用continue和break

  3. 条件判断 与循环类似

  4. switch 不需要break,不会执行完所有情况,找到对应的条件直接输出,不搜索剩余的情况

  5. 数组 初始化时决定长度,维度,大小固定,不够灵活

  6. 切片 大小可动态变化,使用make关键字生成,之后使用append向其中添加元素,通过copy可以将一个切片复制给另一个

  7. map结构 存储key和value值,通过key查找value时会返回value和状态,通过状态判断map中是否查找到该key

  8. 范围 在遍历数组元素时使用,遍历map时不会按照顺序输出,map中存储的数据是无序的

  9. 方法定义 需要定义输入和输出,输出可以返回多个返回值,多个返回值可以是不同类型

  10. 指针 利用指针,通过方法改变变量的值,不适用指针就只改变变量的复制的值。利用指针防止大数据量变量的复制

  11. 结构体 定义对象的属性,包括属性名和属性的类型。还可以定义对象的方法,在方法名前面加上对应的对象名,指定该方法为某个对象的方法,可以通过方法修改对象的属性值。

  12. 异常错误 可以得到异常报错输出,并直接对异常进行处理

  13. 字符类型 字符类型提供了多种方法,包括查询是否包含子字符串,计算字符数量,是否为前后缀,字符串在字符中的索引,字符连接,字符复制,字符替换,字符分割,大小写转换等。中文字符长度与英文不同

  14. 标准输出 通过fmt的标准化输出方法,可以指定变量输出格式。例如小数位数,结构体的属性值或是结构体的具体数据类型

  15. json字符串转化 利用marshal和marshalindent进行json字符串的相关转换,通常用于浏览器请求服务时对请求与响应内容的读写

  16. 时间类 提供提取年月日时分秒的方法,时间的规范化表示方法,计算两时间点之间的相差时间,从字符串中提取时间对象

  17. 字符串转换为整型 通过strconv实现字符串到整形的转换,通过设置参数可以决定转换的进制

编程案例

  1. 猜数字 通过时间设置随机种子,生成随机数,读取输入与随机数进行比较并做判断

  2. 词典 通过浏览器自带的开发工具获得请求与响应,转换为go语言,并通过go实现请求的发布和回传结果的读取

  3. 代理服务器 通过认证函数auth()实现认证,通过connect()进行连接

标题:「Go 语言上手-基础语言」第三届字节跳动青训营 - 后端专场

网址:live.juejin.cn/4354/yc_bas…