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. [cocos2d-x]用getContentSize()返回的值用CCLOG打印必须用%f

    今天写代码,又遇到了一个bug,开始还以为是我自己哪写错了,没想到竟然在这里出错? 而width和height的类型是float类型,为什么必须用%d打印?接着我查看了一下源码: 如果没理解错的话,C ...

  2. 【Java复健指南15】链表LinkedList及其说明

    链表LinkedList by Java 之前有写过一些记录(引用),但是忘了乱了,现在重新梳理一遍 链表是Java中List接口的一种实现 定义(引用) 链表(linked list)是一种物理存储 ...

  3. vulnhub靶场之VULNCMS: 1

    准备: 攻击机:虚拟机kali.本机win10. 靶机:VulnCMS: 1,下载地址:https://download.vulnhub.com/vulncms/VulnCMS.ova,下载后直接vb ...

  4. 双目测距+点云——使用MiddleBurry数据集的图片

    效果 输入: 左图 右图 输出: 视差图 深度图 实现了鼠标点击图片中的位置,显示其深度. 点云 其他例子点云: bicycle motorcycle 使用自己的双目摄像头拍摄的图片: bottle ...

  5. 区块链特辑——solidity语言基础(六)

    Solidity语法基础学习 十.实战项目(二): 1.实战准备: ERC20代币接口 ERC20 Token Interface接口 Interface IName {--} ·关键字:interf ...

  6. Hugging News #0106

    每一周,我们的同事都会向社区的成员们发布一些关于 Hugging Face 相关的更新,包括我们的产品和平台更新.社区活动.学习资源和内容更新.开源库和模型更新等,我们将其称之为「Hugging Ne ...

  7. Unity - 创建C#脚本默认编码格式为UTF8

    嗨咯大家好,哈哈哈哈哈哈哈哈哈哈,今儿小黑加班,目的只有一个,解决Unity创建的脚本通过VS打开后编码格式不正确,导致从Unity的Inspector面板与Mac上边的VS看到的中文为乱码,很气,找 ...

  8. RAM算法原理

    1 应用场景 信道的不对称性和信道的高波动是移动环境中无线信道的两个显著特征.因此,当在车辆网络等移动环境中使用IEEE 802.11设备时,有一个能够处理这些问题的有效速率自适应方案至关重要.RAM ...

  9. Grafana 系列文章(十):为什么应该使用 Loki

    ️URL: https://grafana.com/blog/2020/09/09/all-the-non-technical-advantages-of-loki-reduce-costs-stre ...

  10. 阿里百秀后台管理项目笔记 ---- Day02

    来吧展示: step1: 动态获取用户头像信息 引入 jquery.js 文件 <script src="/static/assets/vendors/jquery/jquery.js ...