Day2-go语言基础2 | 青训营笔记

69 阅读2分钟

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

2.11 基础语法 指针

  • 传入地址&可以改变原变量的值

image.png

2.12 基础语法 结构体

  • 结构体是带类型字段的集合;

  • 初始化,可以构造传入每个字段初始值,可以键值对方式指定初始化,部分初始化;

  • 结构体也支持指针,&取地址;

image.png

2.13 基础语法 结构体方法

  • (结构体)声明为结构体方法;

  • 实现结构体方法有两种写法,带指针/不带指针;

  • 带指针可以修改结构体,不然操作的是拷贝,不能对结构体修改;

image.png

2.14 基础语法 错误处理

  • 在函数实现中使用一个单独的返回值传递错误信息;
  • 出现错误,返回nil+error;
  • 没有错误,返回结果+nil;

image.png

2.15 基础语法 字符串操作

  • 标准库strings包里面有很多常用字符串工具函数,

  • 比如contains判断一个字符串里面是否包含另一个字符串,count计数,index查找某个字符串位置,join连接多个字符串,repeat重复多个字符串,replace替换字符串;

image.png

2.16 基础语法 字符串格式化

  • println是打印多个变量,并换行;

  • go语言中,可以使用%v打印任意类型变量,不需要区分;

  • %+v打印详细结果,%#v则更详细;

image.png

2.17 基础语法 JSON处理

  • go语言中JSON操作非常简单,对于已有结构体,只要保证每个字段第一个字母是大写;

  • 就是公开字段,那么结构体可以用JSON.Marshal去序列化,变成一个JSON字符串;

  • 序列化后字符串,使用JSON.Unmarshal去反序列化到一个空变量;

image.png

2.18 基础语法 时间处理

  • go最常用,time.now()获取当前时间;
  • now.Unix()获取时间戳;

image.png

2.19 基础语法 数字解析

  • 字符串与数字类型转换,strconv包下;(string convert);

image.png

2.20 基础语法 进程信息

  • 使用os.argv得到程序执行时候指定的命令行参数;

image.png