码迷,mamicode.com
首页 > 其他好文 > 详细

第八课 go的条件语句

时间:2018-06-17 14:22:29      阅读:118      评论:0      收藏:0      [点我收藏+]

标签:var   package   求值   class   efault   ack   运行   not   switch   

1  if ... else

package main

import "fmt"

func main() {
    flag:= 10

    if flag > 20 {
        fmt.Println("flag > 20")

    } else {
        fmt.Println("flag < 20")
    }
}

2 switch语句

 

package main

import "fmt"

func main() {
    var mark = "hello"

    switch mark {
    case "hello":
        fmt.Println("hello");case "others" :
        fmt.Println("others")
    }

switch {
case "hello" == mark:
fmt.Println("is hello" )
case "AAAA" != mark:
fmt.Println("not AAAA")
}
}

 

3 Select语句

 select随机执行一个可运行的case。如果没有case可运行,它将阻塞,直到有case可运行。一个默认的子句应该总是可运行的

select {
    case communication clause  :
       statement(s);      
    case communication clause  :
       statement(s); 
    /* 你可以定义任意数量的 case */
    default : /* 可选 */
       statement(s);
}

 如果有多个case都可以运行,Select会随机公平地选出一个执行。其他不会执行。否则:

  • 如果有default子句,则执行该语句。
  • 如果没有default字句,select将阻塞,直到某个通信可以运行;Go不会重新对channel或值进行求值。

 

第八课 go的条件语句

标签:var   package   求值   class   efault   ack   运行   not   switch   

原文地址:https://www.cnblogs.com/liufei1983/p/9192740.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!