go ---switch语句
Posted saryli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go ---switch语句相关的知识,希望对你有一定的参考价值。
package main import ( "fmt" ) func main() var ar = [...]string"A", "B", "D", "E" for _, content := range ar switch content case "A": fmt.Println("AAA") case "B", "C", "D": fmt.Println("BBB") default: fmt.Println("CCC")
输出:
AAA
BBB
BBB
CCC
使用fallthrough,来向下一个case语句转移流程控制权,
package main import ( "fmt" ) func main() var ar = [...]string"A", "B", "D", "E" for _, content := range ar switch content case "A": fallthrough case "B", "C", "D": fmt.Println("BBB") default: fmt.Println("CCC")
输出:
BBB
BBB
BBB
CCC
类型switch语句:对类型进行判定,而不是值
package main import ( "fmt" ) func main() v := 11 switch i := interface(v).(type) case int, int8, int16, int32, int64: fmt.Printf("A signed integer: %v. the type is :%T\n", v, v) fmt.Printf("A signed integer: %v. the type is :%T\n", i, i) case uint, uint8, uint16, uint32, uint64: fmt.Printf("A unsigned integer: %v. the type is :%T\n", v, v) fmt.Printf("A unsigned integer: %v. the type is :%T\n", i, i) default: fmt.Println("Unknown!")
输出:
A signed integer: 11. the type is :int
A signed integer: 11. the type is :int
package main import ( "fmt" ) func main() var v interface v = "hi" switch v.(type) case string: fmt.Printf("The string is %v \n", v.(string)) case int, int8, int16, int32, int64: fmt.Printf("A signed integer: %v. the type is :%T\n", v, v) case uint, uint8, uint16, uint32, uint64: fmt.Printf("A unsigned integer: %v. the type is :%T\n", v, v) default: fmt.Println("Unknown!")
输出:
The string is hi
以上是关于go ---switch语句的主要内容,如果未能解决你的问题,请参考以下文章