选择结构二switch选择结构
在上一章节我们讲解了if选择结构 本章我们学习 switch选择结构 还要知道if选择结构和switch结构的区别 为什么学习了if选择结构还要学习switch选择结构 以及 两种选择结构的运用场合
下面我们来看一个问题
问题:小明参加计算机比赛,
如果获得第1名那么就给他买一个车,
如果获得第2名就给他买一个手机
如果获得第3名就给他买本书
否则就什么都不买
这个题的解决方法可以用多重if选择结构 还可以用switch选择结构下面我们具体的使用每种选择结构都来操作一下
if(成绩==第一名){
买一个车
}else if(成绩==第二名){
买一个手机
}else if(成绩==第三名){
买本书
}else{//什么都没有
什么都不买
}
使用if选择结构我们已经实现了这个问题的解决方案那么怎么用switch结构来完成这个操作呢
首先我们来看一下switch选择结构的基本语法
首先我们看 switch(表达式) 表达式里面 可以是int short byte char 美剧 Sting类型
case 常量:break; 如果等于常量 那么执行 case区域的代码 直到break 结束
case块可以出现很多个 那如果 所有case 后面的常量都没有匹配上 他就会执行default块的部分 同样碰到break 就跳出switch结构
既然我们已经知道了switch的结构语法 下面我们来解决一下上面的问题
int score=1;
switch(score){
case 1:
买一个车
break;
case 2:
买一个手机
break;
case 3:
买本书
break;
default:
什么都不买
break;
}
可以看到如果 swith(表达式)括号里面表达式的值于case 后面的值相等 那么 就会执行 当前case 后面的值 如果switch括号里面的值 在case块没有一个匹配 那么就会进入default里面需要注意的是 每个case块后面都要有break;必须有如果没有的话 那么程序将继续向下执行 直到遇到break才停止
default块顺序可以变动,但要注意其执行顺序。
通常,default块放在末尾,也可以省略
比较一下 多重if与switch选择结构的
相同点 都是用来处理多分支条件的结构
不同点 switch选择结构 只能处理等值条件判断的情况
多重if选择结构 没有switch选择结构的限制 特别适合某个变量处于某个连续区间的情况
给大家流一个作业
如图
选择结构二switch选择结构的更多相关文章
- if选择语句与switch选择语句的比较、区别及应用场景
if选择语句和switch选择语句的比较: 1.switch语句只支持常量值相等的分支判断,而if语句支持更为灵活,任意布尔表达式均可: 2.switch语句通常比一系列嵌套if语句效率更高:逻辑更加 ...
- 房上的猫:switch选择结构,与选择结构总结
switch选择结构: 一.定义: switch选择结构,可以方便地解决等值判断问题二.语法: switch(表达式){ case 常量1: //代码块1; break; c ...
- JAVA的选择结构(二)
1.switch选择结构: 语法: switch (key) { ...
- java中的结构--switch选择结构
if-switch 选择结构 switch结构可以更好的解决等值判断问题switch 选择结构的语法:switch (表达式){ case 常量 1: //代码块1: break; case 常量 2 ...
- Java(4)switch选择结构
一.switch结构(开关语句)的语法 switch(表达式 ){--->类型为int.char case 常量1 :--->case 结构可以有多个 //语句块1 break;---& ...
- java4选择结构 二
public class jh_01_为什么使用switch选择结构 { /* * 韩嫣参加计算机编程大赛 * 如果获得第一名,将参加麻省理工大学组织的1个月夏令营 * 如果获得第二名,将奖励惠普笔记 ...
- 037 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 04 switch结构
037 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 04 switch结构 本文知识点:Java中的switch结构 选择结构分类 选择结构只有如下2种 ...
- shell编程中的 三种结构: 条件if/选择结构case/循环for/while/until等结构 和 函数的用法
shell 函数的使用 (md中, 列表本身是有格式的, 他要产生缩进, 其次,列表项和列表项之间, 可以留有一个空行, 是合法的, 允许的) shell函数,就是 就相当于一个命令来看待和处理的, ...
- 5,注释、分支结构、循环结构、伪“选择结构”
注释: python使用#作为行注释符,使用三引号作为多行注释符 分支结构: if-else: a=int(input("你的成绩是:")) if a>60: print(& ...
随机推荐
- VBE2014_Setup_20160709.rar
VBE2014用于各种VBA编程环境的插件,包括VB6 安装本软件之后,在编程环境的“外接程序管理器”中,可以勾选/取消勾选. 在代码区域点击右键,可以对 过程.模块.工程级别的代码进行自动缩进. * ...
- css样式表----------样式属性(背景与前景、边界和边框、列表与方块、格式与布局)
一.背景与前景 (1).背景 line-height: 1.5 !important;">90; /*背景色(以样式表为主,样式表优先.)*/ background-image:url ...
- 用go写爬虫服务并发请求,限制并发数
java写爬虫服务,思路是线程池,任务队列,限制并行线程数即可. go要用另一种设计思路,不能在线程层面限制,协程的异步请求,如果不作处理,并行发出所有网络请求,因网络请求数过多,会抛出异常 低版本的 ...
- Method POST, Status (canceled) error message
I have the following code which is giving me a Method POST, Status (canceled) error message: $(docum ...
- 类加载器ClassLoader的理解
最近在做一个热加载Class的小组件,这个组件需要对类加载器ClassLoader有所了解,我就顺便借这个机会把学到的一点皮毛与大家分享一下. 从Class文件开始 ClassLoader,顾名思义就 ...
- E丢丢App重设计总结
E丢丢学习App是华夏大地教育可以有限公司旗下的一款产品,专为提升学历者打造,它整合了线上+跟踪的 (E平台)功能,方便工作人员随时随地管理账号.跟进学员:同时还可以随时了解教育行业的新闻资讯.一对一 ...
- asp.net mvcview界面does not contain a definition
在cshtml使用linq操作数据集,自动补全是可以使用Select,但是一直提示System.Collection.GenericList' does not contain a definitio ...
- proxmox新版本使用了lxc容器,导致以前的vzlist命令无法使用,于是自己写了一个脚本来获取所有半虚拟化主机的信息状态
#!/usr/bin/env python #encoding:utf-8 # desc:用来描述各个主机信息 import os #CTID NPROC STATUS IP_ADDR HOSTNAM ...
- JS做深度学习3——数据结构
最近在上海上班了,很久没有写博客了,闲下来继续关注和研究Tensorflow.js 关于深度学习的文章我也已经写了不少,部分早期作品可能包含了不少错误的认识,在后面的博文中会改进或重新审视. 今天聊聊 ...
- JVM笔记(二)
内存分配1)对象的内存分配,往大的方向讲,就是在堆上分配2)对象优先在Eden分3)大对象直接进入老年代4)长期存活的对象进入老年代:对象在Survivor区每“熬过”一次Minor GC,年数加1, ...