Go语法¶
1 文章收藏¶
Go by Example mmcgrana/gobyexample
Go语言圣经 https://golang-china.github.io/
2 关键字¶
先后顺序按照 Go by example 出现顺序
package
声明包
import
导入包
func
声明函数
const
声明常量
var
声明一个变量
for
唯一循环
range
遍历数组、切片、map、字符串或channe
break
跳出循环或标签
if
条件语句
else
if语句的否定分支
switch
条件分支语句
case
匹配switch语句中的一个分支
default
在switch语句中设置默认分支
interface
声明一个接口
map
声明和操作map映射
return
结束函数并返回值
type
声明一个新的类型
struct
声明一个结构体
关键字 | 描述 |
---|---|
chan | 声明和操作channel通道 |
continue | 跳过当前循环迭代并继续下一个 |
defer | 推迟一个函数的执行直到周围函数返回 |
fallthrough | 强制执行switch的下一个case |
go | 启动一个goroutine并发执行函数 |
goto | 跳转到指定的代码行 |
select | 多路复用通道操作 |
3 基本类型¶
- bool:布尔类型,取值为
true
或false
。
2.1 有符号整数¶
int
:根据系统不同,32 位或 64 位。int8
:8 位有符号整数,范围为 -128 到 127。int16
:16 位有符号整数,范围为 -32768 到 32767。int32
:32 位有符号整数,范围为 -2147483648 到 2147483647。int64
:64 位有符号整数,范围为 -9223372036854775808 到 9223372036854775807。
2.2 无符号整数¶
uint
:根据系统不同,32 位或 64 位。uint8
:8 位无符号整数,范围为 0 到 255。uint16
:16 位无符号整数,范围为 0 到 65535。uint32
:32 位无符号整数,范围为 0 到 4294967295。uint64
:64 位无符号整数,范围为 0 到 18446744073709551615。
2.3 特殊整数类型¶
uintptr
:用于存储指针的整数类型,其大小取决于指针的位数。
2.3.1 浮点类型¶
float32
:32 位浮点数。float64
:64 位浮点数。
2.3.2 复数类型¶
complex64
:实部和虚部都是 32 位浮点数。complex128
:实部和虚部都是 64 位浮点数。
2.4 字符串类型¶
- string:字符串类型,存储 UTF-8 编码的文本。
4 内建函数¶
- 基础函数:
len
,cap
,new
,make
,append
,copy
,delete
。 - 类型转换:
complex
,real
,imag
(用于复数),close
(用于关闭通道)等。 - 错误恢复:
panic
,recover
。