if 分支

if 单分支

if 条件表达式 {

逻辑代码

}

package main

import "fmt"

func main() {
//var a int = 9
//if a < 10 { //判断a《10位true,所以为执行下面的打印a的值。
if a := 9; a < 10 { //定义a的值为9,判断a《10位true
fmt.Printf("a的值为: %v\n", a)
}
}

执行结果

a的值为: 9

if 双分支

if 条件表达式 {

逻辑代码1

} else {

逻辑代码2

}

当条件表达式成立时执行逻辑代码1,当条件表达式不成立执行逻辑代码2

package main

import "fmt"

func main() {
if n1 := 20; n1 > 30 { //判断n1的值是否大于30,结果为false
fmt.Printf("a的值大于30,a的值为%v\n", n1)
} else { //注意else必须写}一行,不能写在下面
fmt.Printf("a的值小于30,a的值为%v\n", n1)
}
}

执行结果

a的值小于30,a的值为20

if 多分支

if 条件表达式1 {

逻辑代码1

} else if 条件表达式2 {

逻辑代码2

}

.......

else {

逻辑代码n

}

if条件表达式成立就执行哪个逻辑代码,都不成立就执行else下面的代码

package main

import "fmt"

// 多分支
func main() {
if n3 := 81; n3 >= 100 { //n3的值大于等于100,执行打印
fmt.Printf("n3的值大于100,n3的值为:%v\n", n3)
} else if n3 >= 90 { //n3的值大于等于90,执行打印
fmt.Printf("n3的值大于90,n3的值为:%v\n", n3)
} else if n3 >= 80 { //n3的值大于等于80,执行打印
fmt.Printf("n3的值大于80,n3的值为:%v\n", n3)
} else { //上面的条件都不符合,则执行这个打印
fmt.Printf("n3的值小于80,n3的值为:%v\n", n3)
}
}

执行结果

n3的值大于80,n3的值为:81

switch 分支

switch 表达式 {

case 值1,值2,.….:

语句块1

case 值3,值4,...:

语句块2

....

default:

语句块

}

  • case 后面的值不能重复,且必须与switch后面表达式的值类型一致。
  • case后面不需要带break。
  • default作为兜底,不是必须的。当上面的case值都不匹配,则执行default下面的语句块,default写在什么位置都可以,不一定需要写在最下面。
  • 利用fallthrough关键字可以穿透case下面的判断,执行下面的语句
  • case后面可以带多个值,使用逗号间隔。比如 case 值1,值2…
package main

import "fmt"

func main() {
var n1 int = 120
switch n1 {
case 90, 100: //当n1等于90或者100执行下面的打印
fmt.Printf("n1的值为90或100\n")
case 110: //当n1等于110执行下面的打印
fmt.Printf("n1的值为110\n")
case 120: //当n1等于120执行下面的打印
fmt.Printf("n1的值为120\n")
fallthrough //继续执行下一个case,也叫switch穿透。
case 130:
fmt.Printf("n1的值为130\n")
default: //上面的case都不匹配,则执行这段打印
fmt.Printf("n3的值不在90,100,110,120,130之中\n")
}
}

执行结果

n1的值为120
n1的值为130

golang流程控制if,switch分支的更多相关文章

  1. php总结2——php中的变量、数据类型及转换、运算符、流程控制中的分支结构

    2.1  php中的变量: 定义变量:$变量名称=值: 变量名称:$开头    $之后的第一位必须是字母    $第二位之后可以是字母.数字或者是下划线.习惯上变量名称有实际含义,第二个单词后首字母大 ...

  2. Golang - 流程控制

    目录 Golang - 流程控制 1. 选择结构 2. 循环结构 3. 跳转语句 Golang - 流程控制 1. 选择结构 if else语句: //package 声明开头表示代码所属包 pack ...

  3. 运算符的应用及流程控制if,switch语句

    运算符的应用 1:赋值运算符    简单赋值运算符        例如var useName='tom';//简单赋值运算符    复合赋值运算符        a+=b;//相当于a=a+b;   ...

  4. Java流程控制,for,switch,while.break,continue,return

    Java流程控制,for,switch,while.break,continue,return

  5. day04流程控制,if分支结构,while,for循环

    复习 ''' 1.变量名命名规范 -- 1.只能由数字.字母 及 _ 组成 -- 2.不能以数字开头 -- 3.不能与系统关键字重名 -- 4._开头有特殊含义 -- 5.__开头__结尾的变量,魔法 ...

  6. JavaScrip流程控制之switch选择,for循环

    swith根据表达式的值来case ,break执行跳转语句 <!DOCTYPE html> <html lang="en"> <head> & ...

  7. Java流程控制04——Switch选择结构

    switch 多选择结构 switch case 语句判断一个变量与一系列值中某个值是否相等,每个支撑位一个分支. switch语句中的变量类型可以是: byte short int 或者 char ...

  8. Go Walk教程 - 流程控制( switch)

    Go的 switch 非常灵活,表达式不必是常量或整数,执行的过程从上至下,直到找到匹配项,不要break: var score =98 var result string switch score/ ...

  9. 流程控制------if else分支语句

    一.If`······else语句:如果条件成立,就执行在语句体... 语法:if    条件:   语句体1   语句体2   语句体3 ··········· 例如: 1. if True:   ...

  10. PHP入门之流程控制

    前言 上一篇文章对PHP的一些类型和运算符进行了简单的讲解.PHP入门之类型与运算符 这篇简单讲解一下流程控制.结尾有实例,实例内容是用switch分支和for循环分别做一个计算器和金字塔. 分支控制 ...

随机推荐

  1. python之路43 JavaScript语法BOM与DOM jQuery对比 标签绑定事件

    前戏 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我们还不能制作一些我们经常看到的网页的一些交互,我们需要继续学习BOM和DO ...

  2. Java用户交互方法——Scanner

    Scanner用户交互 使用Next方法接收 Scanner scanner = new Scanner(System.in); if(scanner.hasNext()){//判断用户有无输入 St ...

  3. [C++]什么是POD?

    POD意指Plain Old Data,也就是标量性别(Scalar Types)或传统的C Struct型别.POD型别必然拥有trival constructor/destructor/copy/ ...

  4. JavaBean为何物?

    JavaBean为何物?   摘要:初学SSM框架之后,我对JavaBean这个东西开始有了简单的接触,在很久以前听见JavaBean这个词一直以为是一个非常高大上的东西,但是在仔细研究之后发现其本质 ...

  5. 2023牛客寒假算法基础集训营1 ACDEFGHKLM

    比赛链接 A 题解 知识点:模拟. 显然. (用char输入到一半直接给答案跳出,WA了两小时,无话可说. 时间复杂度 \(O(1)\) 空间复杂度 \(O(1)\) 代码 #include < ...

  6. Python从零到壹丨图像增强及运算:图像掩膜直方图和HS直方图

    摘要:本章主要讲解图像直方图相关知识点,包括掩膜直方图和HS直方图,并通过直方图判断黑夜与白天,通过案例分享直方图的实际应用. 本文分享自华为云社区<[Python从零到壹] 五十二.图像增强及 ...

  7. Java 进阶P-8.1+P-8.2

    捕捉异常 异常的处理方式之一:捕获异常 捕获异常是通过3个关键词来实现的:try-catch-finally.用try来执行一段程序,如果出现异常,系统抛出一个异常,可以通过它的类型来捕捉(catch ...

  8. springboot项目中swagger配置

    1.导入依赖 查看代码 <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId> ...

  9. MySQL 中的事务理解

    MySQL 中的事务 前言 原子性 一致性 持久性 并发事务存在的问题 脏读 幻读 不可重复读 隔离性 事务的隔离级别 事务隔离是如何实现 可重复读 和 读提交 串行化 读未提交 可重复读解决了幻读吗 ...

  10. 基于 Hugging Face Datasets 和 Transformers 的图像相似性搜索

    基于 HuggingFace Datasets 和 Transformers 的图像相似性搜索 通过本文,你将学习使用 Transformers 构建图像相似性搜索系统.找出查询图像和潜在候选图像之间 ...