Go 语言基础语法 | 青训营笔记

113 阅读2分钟

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

安装go语言

访问 go.dev/ ,点击 Download ,下载对应平台安装包,安装即可

配置 Go 语言开发环境,安装 VS Code,并安装 Go 插件

go语言基本语法

1.变量声明
var 变量名 变量类型

go语言中还支持批量变量声明:

var (
    a string
    b int
    c bool
    d float32
)

在函数内部,可以使用更简略的 := 方式声明并初始化变量

2.字符串的常用操作

len(str) 求长度

+或fmt.Sprintf 拼接字符串

strings.Split 分割

strings.contains 判断是否包含

strings.HasPrefix,strings.HasSuffix 前缀/后缀判断

strings.Index(),strings.LastIndex() 子串出现的位置

strings.Join(a[]string, sep string) join操作

要修改字符串,需要先将其转换成[]rune[]byte,完成后再转换为string。无论哪种转换,都会重新分配内存,并复制字节数组。

3.流程控制

if else的左括号必须与表达式在同一行

无限循环:

for {
    循环体语句
}

Go语言中可以使用for range遍历数组、切片、字符串、map 及通道(channel)。 通过for range遍历的返回值有以下规律:

  1. 数组、切片、字符串返回索引和值。
  2. map返回键和值。
  3. 通道(channel)只返回通道内的值。
4.数组

初始化:

var testArray [3]int                        //数组会初始化为int类型的零值
var numArray = [3]int{1, 2}                 //使用指定的初始值完成初始化
var cityArray = [3]string{"北京", "上海", "深圳"} //使用指定的初始值完成初始化

//可以让编译器根据初始值的个数自行推断数组的长度
var numArray = [...]int{1, 2}
var cityArray = [...]string{"北京", "上海", "深圳"}

//指定索引值初始化
a := [...]int{1: 1, 3: 5}
fmt.Println(a)                  // [0 1 0 5]

数组遍历:

        var a = [...]string{"北京", "上海", "深圳"}
	// 方法1:for循环遍历
	for i := 0; i < len(a); i++ {
		fmt.Println(a[i])
	}

	// 方法2:for range遍历
	for index, value := range a {
		fmt.Println(index, value)
	}
5.切片

切片的本质就是对底层数组的封装,它包含了三个信息:底层数组的指针、切片的长度(len)和切片的容量(cap)

6.map

判断map中键是否存在:

value, ok := map[key]

Go语言中使用for range遍历map

        for k, v := range scoreMap {
		fmt.Println(k, v)
	}

使用delete()内建函数从map中删除一组键值对:

delete(map, key)