Go 语言基础语法| 青训营

243 阅读2分钟

什么是Go语言

Go语言的优势:

1.高性能,高并发

2.语法简单,学习曲线平缓

3.丰富的标准库

4.完整的工具链

5.静态链接

6.快速编译

7.跨平台

8.垃圾回收

开发环境

1.安装Go语言Golang

2.配置Go语言的编辑器,Vscode或Goland

基础语法

第一行代码

  
//入口包  
import "fmt"  
  
//fmt包是用来输入输出字符串,格式化字符串  
  
func main() {  
fmt.Println("你好,世界!")  
}

这里的fmt包是用来输入输出字符串,格式化字符串,

变量

变量类型:字符串,整数,浮点型,布尔型

变量声明:var name = "值 " 变量名 : = 值 常量:const(自动确定类型)

if -else

if 条件 { 语句 }else{ 语句 }

循环

只有唯一的for循环 for{}

for j: =7;j<9;;j++

{}

switch

switch a{

case1:

语句

}

数组

很少用

切片

可变长度的数组 使用make去创造一个切片 append方法 切片操作:可以像python一样去实现切片操作

map()

make(map()())创建 Go语言的map是完全无序的,遍历的时候是不会排序的,是随机顺序

range

快速遍历,range遍历会返回两个值,一个索引一个值,可以用下划线来省略索引

函数

func() 原生支持返回多个值

指针

*与 & 主要用于对传入参数的修改

结构体

带类型的字段的集合,支持指针 type tset struct{ }

结构体方法

类似于类成员函数

错误处理

可以使用if-else处理错误。可以在函数的返回值类型里面加一个error,代表这个函数可能会返回错误

字符串操作

strings包里面字符串工具函数

字符串格式化

json处理

对于已有的结构体,只要保证每个字段第一个字母是大写,那么这个结构体就能用json.marshaler去序列化。

时间处理

time库里面的方法

数字解析

字符串和数字类型之间的转化都在STR conv这个包。