Skip to content

关键字

Go 语言有一组保留字(关键字),它们是语言的基本组成部分,不能作为标识符(如变量名、函数名等)使用。Go 的关键字数量较少,这使得语言更加简洁。以下是 Go 语言的所有关键字及其简要描述:

关键字描述
break终止当前循环或跳出 switch 语句
caseswitch 语句中使用,标识不同的条件分支
chan声明通道类型,用于并发编程中的通信
const定义常量
continue跳过当前循环的剩余部分,开始下一次循环
defaultswitch 语句中,表示所有不符合条件的情况
defer延迟执行函数调用,直到包含它的函数返回
elseif 语句搭配使用,表示不满足条件时的执行部分
fallthroughswitch 语句中,强制执行下一分支(即使该分支条件不匹配)
for循环语句,Go 中唯一的循环结构
func定义函数
go启动一个新的 goroutine,用于并发编程
goto无条件跳转到程序中的其他位置
if条件语句,执行条件判断
import导入其他包
interface定义接口类型
map定义映射类型(键值对集合)
package定义包,Go 中的每个文件都属于一个包
range用于迭代数组、切片、映射、字符串等数据结构
return从函数返回
select在多个通道操作中选择一个执行,用于并发编程
struct定义结构体类型
switch多分支选择语句
type定义新类型或类型别名
var声明变量

关键字详细说明

  • break: 用于结束 forswitchselect 语句中的执行。

    go
    for i := 0; i < 5; i++ {
        if i == 3 {
            break  // 退出循环
        }
        fmt.Println(i)
    }
  • case: 在 switch 语句中用于列出不同的条件分支。

    go
    switch x := 3; x {
    case 1:
        fmt.Println("One")
    case 2:
        fmt.Println("Two")
    case 3:
        fmt.Println("Three")
    }
  • chan: 用于声明通道类型,是 Go 语言并发编程的核心。

    go
    var ch chan int  // 声明一个通道变量
    ch = make(chan int)
  • const: 用于声明常量,常量的值在程序运行时不可改变。

    go
    const Pi = 3.14
  • defer: 用于延迟执行函数,直到当前函数返回时执行,常用于资源释放等清理操作。

    go
    defer fmt.Println("Goodbye!")
    fmt.Println("Hello!")
    // 输出:
    // Hello!
    // Goodbye!
  • go: 启动一个新的 goroutine,执行并发任务。

    go
    go func() {
        fmt.Println("This is a goroutine")
    }()
  • type: 用于定义新的类型或为已有类型创建别名。

    go
    type MyInt int  // 创建一个新的类型 MyInt
  • var: 用于声明变量,可以指定类型或让 Go 自动推断类型。

    go
    var x int = 10  // 声明一个 int 类型的变量 x

特别注意

  • Go 没有 whiledo-while 语句,只有 for 循环可以通过不同的方式实现这些功能。
  • goto 语句是 Go 中唯一的跳转语句,通常不推荐使用,除非特殊场景需要跳出多重嵌套。
  • Go 强制并发编程,通过 goroutine(由 go 关键字创建)和 channel(由 chan 关键字创建)实现协作。

这些关键字定义了 Go 语言的语法结构,理解并掌握它们是学习 Go 的基础。