如何在Go中编写Switch语句

引言

[条件语句]让程序员能够指挥程序在条件为真时采取某种行动,在条件为假时采取另一种行动。通常,我们希望将一些[变量]与多个可能的值进行比较,在每种情况下采取不同的操作。单独使用[if语句]也可以做到这一点。然而,编写软件不仅是让事情正常运行,而且还要将你的意图传达给未来的自己和其他开发人员。switch是另一个条件语句,用于在遇到不同选项时通信Go程序所采取的操作。

我们可以用switch语句写的任何东西也可以用if语句写。在本教程中,我们将看到一些switch语句可以做什么,它可以替换的if语句,以及它最适合在哪里应用的例子。

Switch语句的结构

Switch通常用于描述程序在变量被赋予特定值时所采取的操作。下面的例子演示了我们如何使用if语句完成此操作:

package main

import "fmt"

func main() {
   
   
	flavors := []string{
   
   "chocolate", "vanilla", "strawberry", "banana"}

	for _, flav := range flavors {
   
   
		if flav == "strawberry" {
   
   
			fmt.Println(flav, "is my favorite!")
			continue
		}

		if flav == "vanilla" {
   
   
			fmt.Println(flav, "is great!")
			continue
		}

		if flav == "chocolate" {
   
   
			fmt.Println(flav, "is great!")
			continue
		}

		fmt.Println("I've never tried", flav, "before")
	}
}
Outputchocolate is great!
vanilla is great!
strawberry is my favorite!
I've never tried banana before

main中,我们定义了[一片]冰淇淋的口味。然后我们使用[for循环]来迭代它们。我们使用了3个if语句来打印出不同的消息,表示用户对不同口味的冰淇淋的偏好。每个if语句必须使用continue语句来停止for循环的执行,这样就不会打印出首选冰淇淋口味的默认消息。

当我们添加新的冰淇淋偏好时,我们必须不断添加if语句来处理新的case。重复的消息,比如"vanilla""chocolate",一定有重复的if语句。对于我们代码的未来读者(包括我们自己)来说,if

相关推荐

  1. 如何Go编写Switch语句

    2023-12-08 20:42:01       37 阅读
  2. 如何Go编写

    2023-12-08 20:42:01       46 阅读
  3. Go语言如何调试

    2023-12-08 20:42:01       18 阅读
  4. Go语言如何使用变量

    2023-12-08 20:42:01       6 阅读
  5. 如何Go构建For循环

    2023-12-08 20:42:01       39 阅读
  6. 如何Go制作HTTP服务器

    2023-12-08 20:42:01       48 阅读
  7. 如何Go发起HTTP请求

    2023-12-08 20:42:01       52 阅读
  8. 如何Go使用泛型

    2023-12-08 20:42:01       40 阅读
  9. 如何Go使用模板

    2023-12-08 20:42:01       32 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-08 20:42:01       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-08 20:42:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-08 20:42:01       20 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-08 20:42:01       20 阅读

热门阅读

  1. 基于Docker安装Mysql:5.5

    2023-12-08 20:42:01       24 阅读
  2. 如何使用JQUERY ..从URL获取域名和参数?

    2023-12-08 20:42:01       36 阅读
  3. 解析 DNS 域名:了解其结构与解析过程

    2023-12-08 20:42:01       37 阅读
  4. unity连接php+mysql(超级简易游戏注册功能)

    2023-12-08 20:42:01       26 阅读
  5. Linux 统计命令Netstat详解

    2023-12-08 20:42:01       35 阅读
  6. 1380 一笔画问题

    2023-12-08 20:42:01       29 阅读
  7. Chromium包含的内容(引擎)

    2023-12-08 20:42:01       36 阅读
  8. LSKNet:大选择核网络在遥感目标检测中的应用

    2023-12-08 20:42:01       41 阅读
  9. 算法 | 每日一题 | 可获得的最大点数 | 滑动窗口

    2023-12-08 20:42:01       47 阅读
  10. 阿里云docker加速

    2023-12-08 20:42:01       35 阅读