61396-Go语言程序设计项目化教程(微课版)2.3 流程控制.pptx

上传人:暗伤 文档编号:96687027 上传时间:2024-03-01 格式:PPTX 页数:22 大小:563.95KB
返回 下载 相关 举报
61396-Go语言程序设计项目化教程(微课版)2.3 流程控制.pptx_第1页
第1页 / 共22页
61396-Go语言程序设计项目化教程(微课版)2.3 流程控制.pptx_第2页
第2页 / 共22页
点击查看更多>>
资源描述

《61396-Go语言程序设计项目化教程(微课版)2.3 流程控制.pptx》由会员分享,可在线阅读,更多相关《61396-Go语言程序设计项目化教程(微课版)2.3 流程控制.pptx(22页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、流程控制流程控制if分支结构语句switch语句01.02.目录01if分支结构语句单分支双分支多分支注意事项1if if分支结构语句分支结构语句条件语句:根据是否满足条件,有选择地跳转到相应的执行序列。if语句单分支双分支多分支if分支结构语句一般会由关键字if、条件表达式和由花括号包裹的代码块组成。其中代码块为:包含了若干表达式和语句的序列。在Go语言中,代码块必须由花括号包裹。多分支ifelseif.else双分支ifelse单分支if1if if分支结构语句分支结构语句packagemainimportfmtfuncmain()vara=1varb=2/如果if语句条件为真,则会执行相

2、对应的代码ifa=bfmt.Println(ab)运行结果为:a5fmt.Println(a5)elseifabfmt.Println(a5if语句与elseif语句是互斥的执行因为if语句已经成立了,所以elseif里面的语句未能执行。1if if分支结构语句分支结构语句packagemainimportfmtfuncmain()vara=11varb=5ifa20fmt.Println(a20)elseifa15fmt.Println(a15)elseifa10fmt.Println(a10)elseifabfmt.Println(ab)运行结果为:a10多个elseif语句,会被依次判断

3、,直到其中一个满足条件的被执行1if if分支结构语句分支结构语句packagemainimportfmtfuncmain()vara=10ifa5ifa20fmt.Println(a20)elseifa10fmt.Println(a10)elsefmt.Println(a5)elsefmt.Println(a5if语句里面可以嵌套多层的if、elseif以及else1if if分支结构语句分支结构语句if分支结构语句使用注意事项条件语句不需要使用括号()将条件包含无论语句体内有几条语句,花括号都是必须存在的左花括号必须与if或者else处于同一行在if之后,条件语句之前,可以添加变量初始化语

4、句,使用;间隔在有返回值的函数中,不允许将“最终的”return语句包含在if.else.结构中,否则会编译失败1if if分支结构语句分支结构语句02Switch选择语句有表达式无表达式2SwitchSwitch选择语句选择语句Switch选择语句:根据不同条件来执行不同动作,每一个条件对应一个case分支。switch语句有表达式无表达式switch语句的执行过程从上至下,直到找到匹配项匹配项后不需要再加break每一个switch语句只能包含一个可选的default分支,若没有找到匹配项,会默认执行default分支中的代码块switch表达式/case后的条件可以是多个值caseval

5、ue1,value2:1casevalue3:2./若以上条件都不满足,则执行下面的语句default:n有表达式switchcase1:1case2:2./若以上条件都不满足,则执行下面的语句default:n无表达式2SwitchSwitch选择语句选择语句2SwitchSwitch选择语句选择语句packagemainimportfmtfuncmain()score:=80switchscorecase90:fmt.Println(A)case80:fmt.Println(B)case70:fmt.Println(C)default:fmt.Println(D)运行结果为:B首先定义整数

6、变量score接着使用switch语句判断score如果是90,则打印A如果是80,则打印B如果是70,则打印C其他情况,则打印D2SwitchSwitch选择语句选择语句packagemainimportfmtfuncmain()score:=80ifscore=90fmt.Println(A)elseifscore=80fmt.Println(B)elseifscore=70fmt.Println(C)elsefmt.Println(D)运行结果为:B将上述代码改成if-else写法如果是90,则打印A如果是80,则打印B如果是70,则打印C其他情况,则打印D2SwitchSwitch选择

7、语句选择语句packagemainimportfmtfuncmain()switchscore:=80;scorecase90:fmt.Println(A)case80:fmt.Println(B)case70:fmt.Println(C)default:fmt.Println(D)运行结果为:B可以在判断条件前面定义变量用;号分割2SwitchSwitch选择语句选择语句packagemainimportfmtfuncmain()score:=66switchcasescore90:fmt.Println(A)casescore80:fmt.Println(B)casescore70,sco

8、re60:/可以放多个条件fmt.Println(C)default:fmt.Println(D)运行结果为:Cswitch后面可以没有条件表达,将条件放在case的后面,也可以放多个条件,但每个case后面的条件不能重复。2SwitchSwitch选择语句选择语句packagemainimportfmtfuncmain()switchscore:=80;scorecase90:fmt.Println(A)case80:fmt.Println(B)fallthrough/强制执行下一case后面的代码case70:fmt.Println(C)default:fmt.Println(D)运行结果

9、为:BCswitch语句支持使用fallthrough关键字强制执行下一case里面的代码2SwitchSwitch选择语句选择语句switch语句还可以被用于type-switch来判断某个interface变量中实际存储的变量类型TypeSwitchswitchx.(type)/*定义任意个数的case*/casetype1:statement(s)casetype2:statement(s)/*可选*/default:statement(s)语法格式2SwitchSwitch选择语句选择语句packagemainimportfmtfuncmain()varxinterfaceswitch

10、i:=x.(type)casenil:fmt.Printf(x的类型:%Trn,i)caseint:fmt.Printf(x是int型)casefloat64:fmt.Printf(x是float64型)casefunc(int)float64:fmt.Printf(x是func(int)型)casebool,string:fmt.Printf(x是bool或string型)default:fmt.Printf(未知类型)运行结果为:x的类型:通过switch语句判断类型2SwitchSwitch选择语句选择语句Switch选择语句注意事项switch/case后是一个表达式(即:常量,变量,

11、一个有返回的函数都可以);case后的各个表达式的值的数据类型,必须和switch的表达式数据类型一致;case后面可以带多个表达式,使用逗号间隔;case后面的表达式如果是常量值,则要求不能重复;case后面不需要带break,程序匹配到一个case后就会执行对应的代码块,然后退出switch,如果一个都匹配不到,则执行default;default语句不是必须的;switch后也可以不带表达式,类似if-else分支来使用;switch后也可以直接声明一个变量,分号结束,不过不推荐;switch穿透:如果在case语句增加fallthrough,则会继续执行下一个case,默认只穿透一层;type-switch:来判断interface变量中实际指向的变量类型。谢谢观看谢谢观看

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁