Go开发 之 基础知识(关键字、预定义标识符)
1、Go的25个关键字讲解
不,你没看错,这门语言只有25个关键字。
不像C++关键字那么多,原本C++98/03有63个关键字,后来C++11又加了10个,变成了73个。
其中13个关键字与C++相同(break、default、switch、case、if、else、const、continue、for、return、map、struct、goto),用法也是类似。其它的12个不同(func、interface、select、defer、go、chan、package、falthrough、range、type、import、var)。
序号 | 关键字 | 介绍 |
---|---|---|
1 | break | 用于跳出循环 |
2 | case | 选择结构标签 |
3 | chan | 定义channel |
4 | const | 定义常量 |
5 | continue | 跳过本次循环 |
6 | default | 用于选择结构的默认选项(switch、select) |
7 | defer | 延迟执行内容(收尾工作)有点类似C++的析构,但是它是再函数结尾的时候去执行(也就是栈即将被释放的时候) |
8 | else | 选择结构-否则 |
9 | fallthrough | 如果case带有fallthrough,程序会继续执行下一条case,不会再判断下一条case的值 |
10 | for | 循环 |
11 | func | 定义函数 |
12 | go | 并发执行 |
13 | goto | 跳转语句 |
14 | if | 选择结构-如果 |
15 | import | 导入包 |
16 | interface | 定义接口 |
17 | map | Map 是一种无序的集合,我们可以像迭代数组和切片那样迭代它,它是使用 hash 表来实现的。 |
18 | package | 包管理 |
19 | range | 从slice、map等结构中取元素 |
20 | return | 用于在函数内部,退出函数执行过程 |
21 | select | go语言特有的channel选择结构 |
22 | struct | 定义结构体 |
23 | switch | 选择结构 |
24 | type | 定义类型 |
25 | var | 定义变量 |
看这个可能有点懵,看一下思维导图吧,是不是更清楚的了解它的结构了呢?
2、Go的36个预定义标识符
还有 36 个预定义标识符,其中包含了基本类型的名称和一些基本的内置函数,见下表:
内建常量 | 内建类型 | 内建函数 |
---|---|---|
true | int | make |
false | int8 | len |
iota | int16 | cap |
nil | int32 | new |
- | int64 | append |
- | uint | copy |
- | uint8 | close |
- | uint16 | delete |
- | uint32 | complex |
- | uint64 | real |
- | uintprt | imag |
- | float32 | panic |
- | float64 | recover |
- | complex64 | - |
- | complex128 | - |
- | bool | - |
- | byte | - |
- | rune | - |
- | string | - |
- | error | - |