初识Go | 青训营笔记

439 阅读2分钟

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

一、本堂课重点内容:

本堂课主要是讲述了Go的一些基本知识,和三个基础例子,这篇笔记将重点介绍课中提到的一些知识点以及个人经过网上搜索对其的补充。

二、详细知识点及补充介绍:

五种变量初始化方法:

var a int :这里使声明一个变量,其默认值是0

var b int = 100:声明变量并初始化

var b = 100:省去数据类型

b := 100:短声明,只能在函数内

var a,b int = 200,100:多变量声明

if else的一种高级用法具体如下所示

if statement; condition {
}

切片是对数组的一个连续片段的引用,所以切片是一个引用类型。切片本身不拥有任何数据,它们只是对现有数组的引用,每个切片值都会将数组作为其底层的数据结构。切片的语法和数组很像,只是没有固定长度而已。

切片的几种初始化形式:

1. var numList []int
2. var numListEmpty = []int[]
3. numList:=make([]int,3,5)
4. 
arr:=[3]int{1,2,3}
var numList = arr[1:2]

在 Go 语言中,map 是散列表(哈希表)的引用。它是一个拥有键值对元素的无序集合,在这个集合中,键是唯一的,可以通过键来获取、更新或移除操作。无论这个散列表有多大,这些操作基本上是通过常量时间完成的。所有可比较的类型,如 整型,字符串等,都可以作为key。

switch-case 中的 fallthrough 语句:使用 fallthrough语句可以在已经执行完成的 case 之后,把控制权转移到下一个 case 的执行代码中。fallthrough 只能穿透一层,不管你有没有匹配上,都要退出了。fallthrough 语句是 case 子句的最后一个语句。如果它出现在了 case 语句的中间,编译会不通过。

defer语句 :含有 defer 语句的函数,会在该函数将要返回之前,调用另一个函数。简单点说就是 defer 语句后面跟着的函数会延迟到当前函数执行完后再执行。

三、课后个人总结:

今天这节课虽然是基础课,但是短短几十分钟的课程对于入门一门语言来讲还是有一定的难度,有一些语法或者是数据结构的细节还需要课下实践中理解。