`

GoLang-4(switch)

    博客分类:
  • GO
 
阅读更多

       多分支语句switch在存在多个条件判断时使用,代码的可读性上要比连续不断的else if语句更好。Go中的switch与java php还是有区别的。java  php使用break语句来中断switch的执行,且都是如下这种方式:

switch (expression)
{
case label1:
  code to be executed if expression = label1;
  break;  
case label2:
  code to be executed if expression = label2;
  break;
default:
  code to be executed
  if expression is different 
  from both label1 and label2;
}

 

     Go中的switch则有如下两种写法:

方式一:switch后不带变量,逻辑在case语句中进行处理,相当于多个纯粹的else if 语句
switch{
 case expression1:
      operation1
 case expression2:
      operation2
 case expression3:
      operation3
default:
    operationdefault
}


方式2:与java和php的处理类似,但是每个case可以包含多个值,这在java和php中是不允许的。
switch var1{
 case label1,label11:
      operation1
 case label2:
      operation2
 case label3:
      operation3
default:
    operationdefault
}

   示例:

方式一:
	c := 6
	switch {
	case c < 7:
		fmt.Println("7")
	case c < 8:
		fmt.Println("8")
	default:
		fmt.Println("default")
	}
方式二:
	day := 4
	switch day {
	case 1, 2, 3:
		fmt.Println("1")

	case 4:
		fmt.Println("4")
	case 5:
		fmt.Println("5")
	}

 

 

分享到:
评论

相关推荐

    开源项目-golang-go.zip

    在开始贡献之前,开发者需要熟悉Go语言的基本语法,包括变量定义、控制结构(如if/else、for、switch)、函数、接口、结构体以及包的导入和导出。此外,了解Go的并发模型至关重要,因为这是Go语言的一大特色,它通过...

    开源项目-arjun024-golang-101.zip

    - **控制流**:条件语句(if-else)、循环(for、while)、switch的使用。 - **函数**:函数的定义、参数传递、返回值,以及递归函数的概念。 2. **Go语言特性**: - **Go并发模型**:goroutines(轻量级线程)...

    Golang-常见面试题目解析.rar

    - **控制流**:涉及if语句、switch语句、for循环、while模拟等。 - **函数**:理解函数的定义、参数传递、返回值及多值返回。 2. **Go语言特性** - **并发编程**:Goroutine和Channel是Go语言并发的核心,了解...

    Go - Golang - An Introduction to Programming in Go

    这部分内容介绍了如何使用`switch`语句来进行模式匹配,并展示了如何使用默认分支处理未匹配的情况。 通过以上知识点的学习,读者能够对Go语言有一个全面的了解,并掌握基础语法和编程技巧,为进一步深入学习打下...

    Golang中switch语句和select语句的用法教程

    本文主要给大家介绍了关于Golang中switch和select用法的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍: 一、switch语句 switch语句提供了一个多分支条件执行的方法。每一个case可以携带一个表达式...

    golang-base

    【标题】"golang-base" 涵盖的是Go语言的基础知识,这是一门静态类型的、编译型的编程语言,由Google公司于2009年推出。Go语言以其简洁的语法、高效的性能和内置的并发支持而受到开发者欢迎,尤其在云计算、网络服务...

    Golang-backend-exercises

    1. **Go语言基础**:包括变量、常量、数据类型、控制结构(如if、for、switch)、函数等基础概念,这些都是编写任何程序的基础。 2. **Go的并发模型**:Go语言的并发特性主要由goroutines(轻量级线程)和channels...

    golang-exercises:做一些练习学习golang

    2. **控制流**:练习可能涵盖条件语句(如if-else,switch-case)、循环(for,while)以及跳转语句(break,continue)。理解这些概念对于编写逻辑清晰的代码至关重要。 3. **函数**:Go语言支持函数的定义、参数...

    my-golang-playground:这是一个记录我学习golang进度的资料库

    1. **Go语言基础**:包括变量、常量、数据类型(如int、float、string、bool等)、控制流(if-else、for、switch)、函数定义与调用。 2. **结构体与指针**:了解如何创建自定义数据类型,以及如何通过指针进行内存...

    golang-episodes:golang的各个学习阶段

    1. **基础语法**: 如变量声明、数据类型、控制结构(if、for、switch等)、函数定义和调用等。 2. **包与导入**: 包的概念、如何创建自定义包以及如何在不同包之间导入和使用函数或类型。 3. **接口**: 接口在Go语言...

    golang-tutorial:进入入门教程源码合集

    4. 并发原语:goroutines是轻量级线程,可以轻松创建和管理;channels是安全地在goroutines之间传递消息的通道,它们共同构成了Go的并发模型。 三、Go语言的安装与环境配置 要开始学习Go,首先需要在你的计算机上...

    exercicio-golang-hpa

    熟悉变量声明、数据类型、控制结构(如 if/else、for 循环、switch)以及函数是编写 Golang 应用的基础。 2. **包和导入**:在 Golang 中,代码组织在包中,通过 `import` 关键字引入所需包。例如,为了与 ...

    Golang-P01-Miscelaneos

    3. **流程控制**:Go 支持传统的 if/else 语句、for 循环、while 类似的 range 循环,以及 switch 语句。Go 语言中的 for 循环尤其强大,可以用于迭代数组、切片或映射。 4. **函数**:Go 语言的函数可以有多个...

    Golang-Recipes:一个Web应用程序,显示Go编程语言的代码示例列表

    4. **Go的包管理与模块系统**:早期Go项目可能使用`go get`命令和GOPATH环境变量管理依赖,但随着Go 1.11引入模块系统,现代项目更倾向于使用模块进行依赖管理。 5. **Web开发框架**:虽然描述中没有明确提及,但...

    golang-tutorials:Go教程-通过编写许多Golang代码让我们真正地变得肮脏

    变量声明、常量定义、数据类型(包括基本类型、复合类型如数组、切片、映射、结构体)以及控制流(if、for、switch等)是学习的起点。同时,Go语言的函数支持多返回值,这在处理错误和返回多个结果时非常方便。 ...

Global site tag (gtag.js) - Google Analytics