Go之旅-Switch

switch支持初始化语句,注意要用分号结束。后跟条件表达式,如果省略条件表达式,默认为true。不需要显式执行break语句,case执行完毕后自动中断。多个匹配条件,其中一个条件符合即可。case执行中断后,如果需要继续执行下一个case块的内容,在下一个case块结尾执行fallthrough并且可以在fallthrough前使用break语句阻止。但不继续后续case块。

package main

import (
    "fmt"
)

func main() {
    // 简单声明几个变量
    a, b, c, d := 1, 2, 3, 4
    switch x := 2; x { // switch支持初始化语句,注意要用分号结束。后跟条件表达式,如果省略条件表达式,默认为true。
    case a:
        fmt.Println("a")
        // break // 不需要显示执行break语句,case执行完毕后自动终端。
    case a, b: // 多个匹配条件,其中一个条件符合即可。
        fmt.Println("b")
        fallthrough // case执行中断后,如果需要继续执行下一个case块的内容,在下一个case块结尾执行fallthrough并且可以在fallthrough前使用break语句阻止。但不继续继续后续case块。
    case c:
        fmt.Println("c")
    case d:
        fmt.Println("d")
    case 5:
        fmt.Println("e")
    //case 5, 6: // 支持常量,但不能出现重复常量
    //  fmt.Println("f")
    default:
        fmt.Println("x") // 只有全部匹配失败后,才会执行default块。
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Swift 提供了类似 C 语言的流程控制结构,包括可以多次执行任务的for和while循环,基于特定条件选择执行...
    穷人家的孩纸阅读 722评论 1 1
  • [The Swift Programming Language 中文版]本页包含内容: Swift提供了多种流程控...
    风林山火阅读 588评论 0 0
  • Swift提供了多种控制流声明。包括while循环来多次执行一个任务;if,guard和switch声明来根据确定...
    BoomLee阅读 2,002评论 0 3
  • 小李退伍后应聘到一家高档小区当安保。他对待工作尽职尽责,很受领导赏识。 一日正当小李在闸口为过往的行人扶门问好时,...
    清风携香lily阅读 246评论 0 2
  • 今天是周末,爸爸休息,妈妈上班。 但却也发生了不少事情。 首先,是爸爸的牵挂,好容易,爸爸能够踏踏实实的休息一天,...
    画念风阅读 181评论 0 1