# Go 语言条件语句
条件语句需要开发者通过指定一个或多个条件,并通过测试条件是否为 true 来决定是否执行指定语句,并在条件为 false 的情况在执行另外的语句。
下图展示了程序语言中条件语句的结构:
![](https://box.kancloud.cn/2015-12-13_566d2e1c442c8.jpg "Go 语言条件语句")
Go 语言提供了以下几种条件判断语句:
| 语句 | 描述 |
| --- | --- |
| [if 语句](/go/go-if-statement.html "Go if 语句") | **if 语句** 由一个布尔表达式后紧跟一个或多个语句组成。 |
| [if...else 语句](/go/go-if-else-statement.html "Go if...else 语句") | **if 语句** 后可以使用可选的 **else 语句**, else 语句中的表达式在布尔表达式为 false 时执行。 |
| [if 嵌套语句](/go/go-nested-if-statements.html "Go if 嵌套语句") | 你可以在 **if** 或 **else if** 语句中嵌入一个或多个 **if** 或 **else if** 语句。 |
| [switch 语句](/go/go-switch-statement.html "Go switch 语句") | **switch** 语句用于基于不同条件执行不同动作。 |
| [select 语句](/go/go-select-statement.html "Go select 语句") | **select** 语句类似于 **switch** 语句,但是select会随机执行一个可运行的case。如果没有case可运行,它将阻塞,直到有case可运行。 |
- Go 语言简介
- Go 语言环境安装
- Go 语言结构
- Go 语言基础语法
- Go 语言数据类型
- Go 语言变量
- Go 语言常量
- Go 语言运算符
- Go 语言条件语句
- Go 语言 if 语句
- Go 语言 if...else 语句
- Go 语言 if 语句嵌套
- Go 语言 switch 语句
- Go 语言 select 语句
- Go 语言循环语句
- Go 语言 for 循环
- Go 语言循环嵌套
- Go 语言 break 语句
- Go 语言 continue 语句
- Go 语言 goto 语句
- Go 语言函数
- Go 语言函数值传递值
- Go 语言函数引用传递值
- Go 语言函数作为值
- Go 语言函数闭包
- Go 语言函数方法
- Go 语言变量作用域
- Go 语言数组
- Go 语言多维数组
- Go 语言向函数传递数组
- Go 语言指针
- Go 语言指针数组
- Go 语言指向指针的指针
- Go 语言指针作为函数参数
- Go 语言结构体
- Go 语言切片(Slice)
- Go 语言范围(Range)
- Go 语言Map(集合)
- Go 语言递归函数
- Go 语言类型转换
- Go 语言接口
- Go 错误处理
- Go 语言开发工具