go基础——switch语法
package main
import "fmt"
/*
switch语法结构:
switch 变量名 {
case 数值1:分支1
case 数值2:分支2
...
default:最后一个分支
}
注意事项:
1.switch可以作用在其他类型上,case后的数值必须和switch作用的变量类型一致
2.case是无序的
3.case后的数值是唯一的
4.default语句是可选操作
*/
func main() {
num := 4
switch num {
case 1:
fmt.Println("一季度")
case 2:
fmt.Println("二季度")
case 3:
fmt.Println("三季度")
case 4:
fmt.Println("四季度")
default:
fmt.Println("数据有误")
}
f := true
switch f {
case true:
fmt.Println("对")
case false:
fmt.Println("错")
}
//特殊用法1:省略switch后面的变量,相当于直接作用在true上
switch {
case num == 1:
fmt.Println("一季度")
case num == 2:
fmt.Println("二季度")
case num == 3:
fmt.Println("三季度")
case num == 4:
fmt.Println("四季度")
default:
fmt.Println("数据错误")
}
//特殊用法2:case后可以同时跟随多个数值
num1 := 8
mod1 := num1 % 10
switch mod1 {
case 1, 3, 5, 7, 9:
fmt.Printf("%d单数\n", num1)
case 0, 2, 4, 6, 8:
fmt.Printf("%d双数\n", num1)
}
//特殊用法3:switch后可以加初始化语句,作用域在switch语句内
switch mod2 := num1 % 10; mod2 {
case 1, 3, 5, 7, 9:
fmt.Printf("%d单数\n", num1)
case 0, 2, 4, 6, 8:
fmt.Printf("%d双数\n", num1)
}
//switch中的break和fallthrough
switch n := 2; n {
case 1:
fmt.Println(n)
fmt.Println("1")
case 2:
fmt.Println(n)
break //跳出
fmt.Println("2")
}
switch m := 1; m {
case 1:
fmt.Println(1)
fallthrough //无需匹配,继续执行下一个case语句
case 2:
fmt.Println(2)
}
}
四季度
对
四季度
8双数
8双数
2
1
2
go基础——switch语法的更多相关文章
- JAVA 基础基本语法---常量与变量
JAVA 基础基本语法---常量与变量 语法:计算机能够识别的语言的规则: 0. 基本语法 编写Java程序时,应注意以下几点: 大小写敏感:Java是大小写敏感的,这就意味着标识符Hello与hel ...
- Java基础概念语法
Java基础概念语法 注释 单行注释 //行注释说明 多行注释 /* 多行注释说明 */ 文档注释 /** *@author 程序的作者 *@version 源文件的版本 *@param 方法的参数说 ...
- Office·Word高级·VBA基础概念语法
阅文时长 | 5.21分钟 字数统计 | 1823字符 『Office·Word高级·VBA基础概念语法』 编写人 | SCscHero 编写时间 | Monday, June 29, 2020 文章 ...
- node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法
1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...
- OC基础 点语法的使用
OC基础 点语法的使用 1.创建一个Student类继承于NSObject,Student.h文件 #import <Foundation/Foundation.h> @interface ...
- 二、JAVA基础、语法
第二节:JAVA基础.语法 1.修饰符.变量: Java中主要有如下几种类型的变量 局部变量 ...
- 六. Python基础(6)--语法
六. Python基础(6)--语法 1 ● Python3中, Unicode转字节的方法 print(bytes("李泉", encoding = 'utf-8')) prin ...
- 五. Python基础(5)--语法
五. Python基础(5)--语法 1 ● break结束的是它所在的循环体, continue是让它所在的循环体继续循环 # 打印: 1 10 2 10 3 10 4 10 5 10 6 10 7 ...
- 四. Python基础(4)--语法
四. Python基础(4)--语法 1 ● 比较几种实现循环的代码 i = 1 sum = 0 while i <= 10: # 循环10-1+1=10次 sum += i i ...
随机推荐
- Kafka集群安装Version2.10
Kafka集群安装,基于版本2.10, 使用kafka_2.10-0.10.1.0.tgz安装包. 1.安装规划 Storm集群模式,安装到下面三台机器 IP Hostname 10.43.159.2 ...
- WPF 使用 Silk.NET 进行 DirectX 渲染入门
本文告诉大家如何使用 dotnet 基金会新开源的 Silk.NET 库调用 DirectX 进行渲染的方法.此库是对 DirectX 的底层基础封装,用上了 dotnet 和 C# 的各个新特性,相 ...
- 原型模式(python)
原型模式也叫克隆模式,通过拷贝自身的属性来创建一个新的对象,基本方法就是调用copy模块下的 (浅拷贝)copy() 和(深拷贝)deepcopy() #!/usr/bin/env python3 # ...
- Python_元类
什么是元类 我们知道,实例对象是由类创建的,那么类又是由什么创建的呢? 答案就是元类. 元类基本不会用到,但是就算不用,也应该去熟悉一下概念. 理解类也是对象 在大多数编程语言中,类就是一组用来描述如 ...
- nginx 配置 ^~ 的用法妙处,403阻断
看看这个 location /css/ { alias D:/我的项目/2-代码/express/src/main/resources/static/css/ ; } 咋一看貌似没有毛病,访问 htt ...
- 【记录一个问题】cv::cuda::BufferPool发生assert错误
cv::cuda::setBufferPoolUsage(true); const int width = 512; const int height = 848; const int channel ...
- python技巧一行命令搞定局域网共享
python超强玩法--一行命令搞定局域网共享 今天刷到python的一个新玩法,利用python自带的http服务,快速创建局域网共享服务,命令如下: python -m thhp.server ...
- 返回void-(响应ajax,响应json格式)(了解)
将jquery库文件加入到idea中 引入json依赖 index.jsp中 设置按钮发起ajax请求 从处理器方法返回void,响应ajax请求 MyController中
- 安装python3.6,设为默认,yum不能用
安装python3.6 1.安装依赖包 yum -y install wget sqlite-devel xz gcc automake zlib-devel openssl-devel epel-r ...
- nginx二进制安装
目录 一:二进制安装nginx 1.下载CentOS源 2.安装CentOS源 3.下载epel源(失败显示未找到命令) 4.解决依赖 5.安装Epel源 6.安装nginx 一:二进制安装nginx ...