关键字
Go 语言有一组保留字(关键字),它们是语言的基本组成部分,不能作为标识符(如变量名、函数名等)使用。Go 的关键字数量较少,这使得语言更加简洁。以下是 Go 语言的所有关键字及其简要描述:
| 关键字 | 描述 |
|---|---|
break | 终止当前循环或跳出 switch 语句 |
case | 在 switch 语句中使用,标识不同的条件分支 |
chan | 声明通道类型,用于并发编程中的通信 |
const | 定义常量 |
continue | 跳过当前循环的剩余部分,开始下一次循环 |
default | 在 switch 语句中,表示所有不符合条件的情况 |
defer | 延迟执行函数调用,直到包含它的函数返回 |
else | 与 if 语句搭配使用,表示不满足条件时的执行部分 |
fallthrough | 在 switch 语句中,强制执行下一分支(即使该分支条件不匹配) |
for | 循环语句,Go 中唯一的循环结构 |
func | 定义函数 |
go | 启动一个新的 goroutine,用于并发编程 |
goto | 无条件跳转到程序中的其他位置 |
if | 条件语句,执行条件判断 |
import | 导入其他包 |
interface | 定义接口类型 |
map | 定义映射类型(键值对集合) |
package | 定义包,Go 中的每个文件都属于一个包 |
range | 用于迭代数组、切片、映射、字符串等数据结构 |
return | 从函数返回 |
select | 在多个通道操作中选择一个执行,用于并发编程 |
struct | 定义结构体类型 |
switch | 多分支选择语句 |
type | 定义新类型或类型别名 |
var | 声明变量 |
关键字详细说明
break: 用于结束for、switch或select语句中的执行。gofor i := 0; i < 5; i++ { if i == 3 { break // 退出循环 } fmt.Println(i) }case: 在switch语句中用于列出不同的条件分支。goswitch x := 3; x { case 1: fmt.Println("One") case 2: fmt.Println("Two") case 3: fmt.Println("Three") }chan: 用于声明通道类型,是 Go 语言并发编程的核心。govar ch chan int // 声明一个通道变量 ch = make(chan int)const: 用于声明常量,常量的值在程序运行时不可改变。goconst Pi = 3.14defer: 用于延迟执行函数,直到当前函数返回时执行,常用于资源释放等清理操作。godefer fmt.Println("Goodbye!") fmt.Println("Hello!") // 输出: // Hello! // Goodbye!go: 启动一个新的 goroutine,执行并发任务。gogo func() { fmt.Println("This is a goroutine") }()type: 用于定义新的类型或为已有类型创建别名。gotype MyInt int // 创建一个新的类型 MyIntvar: 用于声明变量,可以指定类型或让 Go 自动推断类型。govar x int = 10 // 声明一个 int 类型的变量 x
特别注意
- Go 没有
while和do-while语句,只有for循环可以通过不同的方式实现这些功能。 goto语句是 Go 中唯一的跳转语句,通常不推荐使用,除非特殊场景需要跳出多重嵌套。- Go 强制并发编程,通过
goroutine(由go关键字创建)和channel(由chan关键字创建)实现协作。
这些关键字定义了 Go 语言的语法结构,理解并掌握它们是学习 Go 的基础。