简介Go语言中的select语句的用法
2015-10-29 17:37
627 查看
在Go编程语言中的select语句的语法如下:
select {
case communication clause :
statement(s);
case communication clause :
statement(s);
/* you can have any number of case statements */
default : /* Optional */
statement(s);
}
以下规则适用于select语句:
可以有任意数量的范围内选择一个case语句。每一种情况下后跟的值进行比较,以及一个冒号。
对于case的类型必须是一个通信通道操作。
当通道运行下面发生的语句这种情况将执行。在case语句中break不是必需的。
select语句可以有一个可选默认case,它必须出现在select的结束前。缺省情况下,可用于执行任务时没有的情况下是真实的。在默认情况下break不是必需的。
例如:
package main
import "fmt"
func main() {
var c1, c2, c3 chan int
var i1, i2 int
select {
case i1 = <-c1:
fmt.Printf("received ", i1, " from c1\n")
case c2 <- i2:
fmt.Printf("sent ", i2, " to c2\n")
case i3, ok := (<-c3): // same as: i3, ok := <-c3
if ok {
fmt.Printf("received ", i3, " from c3\n")
} else {
fmt.Printf("c3 is closed\n")
}
default:
fmt.Printf("no communication\n")
}
}
让我们编译和运行上面的程序,这将产生以下结果:
no communication
您可能感兴趣的文章:
相关文章推荐
- Lua编程示例(一):select、debug、可变参数、table操作、error
- SQL学习笔记三 select语句的各种形式小结
- 一条select语句引起的瓶颈问题思考
- SQL Select语句完整的执行顺序
- mysql SELECT语句去除某个字段的重复信息
- SQLSERVER 中GO的作用详解
- 点击按钮后 文本框变为Select下拉列表框
- javascript 模拟select下拉列表特效
- javascript select options 排序(保持option 对象完整性)
- 用javascript和css模拟select的脚本
- js select常用操作控制代码
- mysql中insert与select的嵌套使用方法
- jquery的clone方法应用于textarea和select的bug修复
- SQLServer中SELECT语句的执行顺序
- MySQL进阶SELECT语法篇
- asp中 select top 问题!~
- ASP中获得Select Count语句返回值的方法
- 数据库插入数据之select into from与insert into select区别详解
- Javascript select控件操作大全(新增、修改、删除、选中、清空、判断存在等)
- jQuery实现的仿select功能代码