switch case语句

Go 语言的 Type Switch 语句解析

江枫思渺然 提交于 2019-12-05 01:36:19
讲述了Go语言中 Type Swith 的用法以及获取对应变量的一些特殊情况。 Type Switch 的基本用法 Type Switch 是 Go 语言中一种特殊的 switch 语句,它比较的是类型而不是具体的值。它判断某个接口变量的类型,然后根据具体类型再做相应处理。注意,在 Type Switch 语句的 case 子句中不能使用 fallthrough 。 它的用法如下。 switch x.( type ) { case Type1: doSomeThingWithType1() case Type2: doSomeThingWithType2() default : doSomeDefaultThing() } 其中, x 必须是一个接口类型的变量,而所有的 case 语句后面跟的类型必须实现了 x 的接口类型。 为了便于理解,我们可以结合下面这个例子来看: package main import ( "fmt" "reflect" ) type Animal interface { shout() string } type Dog struct {} func (self Dog) shout() string { return fmt.Sprintf( "wang wang" ) } type Cat struct {} func (self Cat) shout

好程序员大数据教程分享大数据之流程控制

南笙酒味 提交于 2019-12-05 00:14:22
好程序员大数据教程分享大数据之流程控制,程序在运行的时候, 对代码执行的先后顺序, 称作程序的执行结构. 在Java中, 程序的执行结构分为三种: 顺序结构: 代码从上往下逐行执行, 是程序执行的基本结构 分支结构: 代码执行到某一个节点遇到多个分支, 选择其中的一个分支执行, 其他的分支都不执行 循环结构: 某一个代码段需要重复的执行 程序默认采用的是顺序结构, 我们也可以通过一些语句来修改程序的执行结构, 这样的语句叫做流程控制语句, 按照修改的执行结构不同, 可以分为 分支流程控制 和 循环流程控制 1.3.1 分支流程控制--if 基础语法 if (condition) { // 代码段1 } else { // 代码段2 } 逻辑: condition是一个boolean类型的变量, 或者一个boolean结果的表达式. 如果condition的值为true, 则代码段1执行, 否则, 代码段2执行 进阶 if (condition1) { // 代码段1 } else if (condition2) { // 代码段2 } else { // 代码段3 } 逻辑: 先判断condition1, 如果condition1成立, 执行代码段1; 如果condition1不成立, 再判断condition2, 如果condition2成立, 执行代码段2, 否则执行代码段3

c#学习笔记——break\\continue\\goto

喜欢而已 提交于 2019-12-04 18:51:00
一、Break break 语句用于中断循环,使循环不再执行。如果是多个循环语句嵌套使用,则 break 语句跳出的则是最内层循环。 (1)、可以跳出 switch-case 结构。 (2) 、可以跳出当前循环。 break 一般不单独的使用,而是跟着 if 判断一起使用,表示,当 满足某些条件的时候,就不再循环了。 二、Continue continue 语句有点像 break 语句。但它不是强制终止,continue 会跳过当前循环中的代码,强制开始下一次循环。 对于 for 循环,continue 语句会导致执行条件测试和循环增量部分。 对于 while 和 do while 循环,continue 语句会导致程序控制回到条件测试上。 三、Goto goto 语句用于直接在一个程序中转到程序中的标签指定的位置,标签实际上由标识符加上冒号构成。 语法: goto Labell; 语句块 1; Labell 语句块 2; 先执行2,再执行1. 此外,需要注意的是 goto 语句不能跳转到循环语句中,也不能跳出类的范围。 由于 goto 语句不便于程序的理解,因此 goto 语句并不常用。 来源: https://www.cnblogs.com/AmbitionBoy/p/11878549.html

Go语言--第4章 流程控制

前提是你 提交于 2019-12-04 14:32:48
第4章 流程控制 主要内容 4.1 条件判断--if 4.2 构建循环--for 4.3 示例:九九乘法表 4.4 键值循环(for range)-- 直接获得对象的索引和数据 4.5 分支选择(switch) -- 拥有多个条件分支的判断 4.6 跳转到指定代码标签(goto) 4.7 跳出指定循环(break) 4.8 跳出当前循坏(continue) 4.1 条件判断--if Go语言规定与if匹配的左括号“{” 必须与if 和表达式放在同一行 ,如果尝试将“{”放在其他位置,将会触发编译错误 与else 匹配的 “{” 也必须与else 在同一行 else也必须与上-个if 或else if 的右边的大括号在一行 格式: if 表达式1 { 分支1 } else if 表达式2 { 分支2 } else { 分支3 } // > 10 特殊写法 if 还有特殊的写法,可以在if表达式之前添加一个执行语句,再根据变量值进行判断,如: if err := Connect(); err != nil { fmt.Println(err) return } Connect() 为假设的函数,err := Connect() 可以视为一个表达式 4.2 构建循环--for Go语言中所有循环类型均可以使用for关键字完成 for 初始语句;条件表达式; 结束语句 { 循环体代码}

C语言I博客作业08

烈酒焚心 提交于 2019-12-04 14:27:29
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/9981 我在这个课程的目标是 学会独立写一些小程序 这个作业在哪个具体方面帮助我实现目标 学习和掌握do-while语句 参考文献 《C语言程序设计》《C primer plus》百度 1.PTA实验作业 1.1 jmu-c-二进制转10进制 1.1.1数据处理 数据表达:运用字符型变量ch表示输入二进制各位字符,用整型变量sum表示对应的十进制输出值 数据处理: 运用了while语句和if-else分支结构 伪代码:if ch=i 十进制sum=sum 2+1 else if ch=0 十进制sum=sum 2=0 else ch=!0/1 输出error input! 1.1.2 实验代码截屏 1.1.3 造测试数据 输入 输出 说明 11111111 225 八位数二进制 34 error input! 不是二进制 0001010 18 七位数二进制 347261 error input! 不是二进制 1.1.4 PTA提交列表及说明 列表说明: * 未将sum赋值,导致部分错误 * 输出时未表达sum的类型,导致部分错误 1.2 爬动的蠕虫 1.2.1 数据处理 数据表达:定义整型变量s,n,u,d

C语言I博客作业08

我的未来我决定 提交于 2019-12-04 14:17:42
问题 答案 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/9977 我在这个课程的目标是 熟练掌握C语言,和学习更多的语句 这个作业在那个具体方面帮助我实现目标 使用while,do-while打代码 参考文献 百度, 1.PTA实验作业 1.1题目 1.1.1数据处理 数据表达:采用了int整型变量,变量n,u,d,且使用了while.if-else语句 数据处理:伪代码{int n,u,d// 定义变量,其中n为井的深度,u为每分钟爬的高度,d为休息时下滑的高度 while{ if{输入条件 循环语句} else{ 循环语句} } 输出} 1.1.2实验代码截图 1.1.3 造测试数据 输入数据 输出数据 说明 16 4 3 25 任意数 12 3 1 11 题目实例 4 3 2 3 任意值 87 76 43 3 较大数 1.1.4 PTA提交列表及说明 编译错误:在scanf语句中没有在"%d%d%d"后面打逗号 运行超时:程序未能在规定时间内运行结束 答案错误:把“h+=u”中的“h”打成了“time” 1.2题目 1.2.1 数据处理 数据表达:运用了int整型变量,number表示输入的·一组二进制数,用char字符给字符变量赋值

C语言I博客作业08

别来无恙 提交于 2019-12-04 13:29:48
这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9979 我在这个课程的目标是 学习了for语句与while语句还有do-while语句,以及这三者的区别 这个作业在那个具体方面帮助我实现目标 使用多分枝结构简化程序,还有使用可读性强的switch语句。学会了使用多种方法写具有累加和判断一个数是几位数 参考文献 C语言程序设计,中国大学慕课 1.PTA实验作业 1.1 jmu-c-二进制转10进制 题目描述:输入一组二进制字符,输出其对应的十进制数。当输入回车键时,输入结束。若输入非二进制字符,输出error input! 1.1.1数据处理 数据表达:本题运用整型int定义num,字符型char定义ch变量,输入一个字符并赋值给变量ch。 数据处理:本题所用到的表达式case '1':num=num*2+1;break; case '0':num=num*2+0;break;使用了while语句和switch语句。 1.1.2实验代码截图 1.1.3造测试数据 输入数据 输出数据 说明 111111111 255 是二进制字符 34 error input! 不是二进制字符 356 error input! 不是二进制字符 1.1.4 PTA提交列表及说明

Java之选择语句

南楼画角 提交于 2019-12-04 12:49:45
switch语句又称之为选择语句,其格式如下 switch语句格式: 执行流程 首先计算出表达式的值 其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。 最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。 代码执行流如下图所示 代码举例 package demo03_Switch; public class Demo01Switch { public static void main(String[] args) { //定义变量,判断是星期几 int weekday = 1; //switch语句实现选择 switch (weekday) { case 1: System.out.println("星期一"); break; case 2: System.out.println("星期二"); break; case 3: System.out.println("星期三"); break; case 4: System.out.println("星期四"); break; case 5: System.out.println("星期五"); break; case 6: System.out.println("星期六"); break; case 7: System.out

Java流程控制语句

帅比萌擦擦* 提交于 2019-12-04 07:47:13
一、if语句   1、格式     if(条件表达式){     }     如果条件表达式为true则执行“ { } ”中的语句。   2、else if     if(条件表达式1){     }else if(条件表达式2){     }     如果条件表达式1不成立则去判断条件表达式2。     可以添加任意条else if 语句   3、else     if(条件表达式1){     }else if(条件表达式2){     }else{     }     如果条件表达式1和条件表达式2都不成立,则会执行else语句。     只能有一条else语句 二、switch语句   1、格式     switch(表达式){     case 值1:       语句1;       break;     case 值2:       语句2;       break;     default:       语句3;       break;     }   2、特点     表达式可以是byte,short,int,char类型,JDK5之后新增枚举类型,JDK7以后可以是字符串。     如果表达式运算结果与case后的值相等就执行后面对应的语句。     如果没有break语句会发生穿透现象。例如,表达式结果等于值1,语句1后没有break语句

分支,数组

走远了吗. 提交于 2019-12-04 04:20:05
一、分支语句介绍 1.逻辑分支(条件分支) 程序设计的结构 顺序结构:从上朝下执行的代码就是顺序 选择(分支)结构:根据不同的情况,执行对应代码 循环结构:重复做一件事情 除顺序结构外,其余两种程序结构由流程控制语句实现。 选择(分支)结构的程序由条件分支语句实现。 二、if语句 1.条件分支语句 两条分支语句无法表示三种情况。 在else语句后再加一个if语句,变成三条分支,又叫多分支语句。 单分支语句: 只有一条分支的条件语句。没有else语句块的if语句就是单分支。 switch语句 switch表达式的值和case表达式的值进行比较,两值相等就执行case对应的分支语句。分支语句可有有任意多个,如果没有任何case表达式的值与switch表达式值相等就执行default的默认分支语句。 2.因为执行完分支语句后不会自动退出switch语句,会继续执行后续的分支语句,这叫做switch透为 避免穿透,需要在每条分支语句后添加break,跳出switch语句。 数组 1.创建空数组 2、join()(原数组不变) 字符串,默认用逗号为分隔符 3. push() 和 pop()(原数组改变) push():接收任意数量的参数,把它们逐个添加到数组末尾,并返回修改后数组的长度。 pop() : 数组末尾移除最后一项,减少数组的 length 值,然后返回移除的项。、 4.shift