第八课 go的条件语句

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或值进行求值。

猜你喜欢

转载自www.cnblogs.com/liufei1983/p/9192740.html