Java选择结构、循环结构
- 1:switch语句(掌握)
- (1)格式:
- switch(表达式) {
- case 值1:
- 语句体1;
- break;
- case 值2:
- 语句体2;
- break;
- ...
- default:
- 语句体n+1;
- break;
- }
- 格式解释说明:
- switch:说明这是switch语句。
- 表达式:可以是byte,short,int,char
- JDK5以后可以是枚举
- JDK7以后可以是字符串
- case:后面的值就是要和表达式进行比较的值
- break:表示程序到这里中断,跳出switch语句
- default:如果所有的情况都不匹配,就执行这里,相当于if语句中的else
- (2)面试题
- switch语句的表达式可以是byte吗?可以是long吗?可以是String吗?
- 可以,不可以,JDK7以后可以
- (3)执行流程:
- A:首先计算表达式的值
- B:和每一个case进行匹配,如果有就执行对应的语句体,看到break就结束。
- C:如果没有匹配,就执行default的语句体n+1。
- (4)注意事项:
- A:case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
- B:default可以省略吗?
- 可以省略,但是不建议,因为它的作用是对不正确的情况给出提示。
- 特殊情况:
- case就可以把值固定。
- A,B,C,D
- C:break可以省略吗?
- 可以省略,但是结果可能不是我们想要的。
- 会出现一个现象:case穿透。
- 最终我们建议不要省略
- D:default一定要在最后吗?
- 不是,可以在任意位置。但是建议在最后。
- E:switch语句的结束条件
- a:遇到break就结束了
- b:执行到末尾就结束了
- (5)案例:
- A:键盘录入一个数字(1-7),输出对应的星期几。
- B:单项选择题
- C:键盘录入一个字符串的问题
- String s = sc.nextLine();
- D:根据给定的月份,输出对应的季节
- (6)if语句和switch语句各自的场景
- A:if
- 针对boolean类型的判断
- 针对一个范围的判断
- 针对几个常量的判断
- B:switch
- 针对几个常量的判断
- 2:循环语句(掌握)
- (1)有三种:for,while,do...while
- (2)for循环语句
- A:格式
- for(初始化语句;判断条件语句;控制条件语句){
- 循环体语句;
- }
- 执行流程:
- a:执行初始化语句
- b:执行判断条件语句
- 如果这里是true,就继续
- 如果这里是false,循环就结束
- c:执行循环体语句
- d:执行控制条件语句
- e:回到b
- B:注意事项
- a:判断条件语句无论简单还是复杂,结果是boolean类型
- b:循环体语句如果是一条,可以省略大括号,但是不建议
- c:有分号就没有左大括号,有左大括号就没有分号
- C:案例
- a:输出10次HelloWorld
- b:输出1-10的数据
- c:输出10-1的数据
- d:求1-10的和
- e:求1-100的和,求1-100的偶数和,求1-100的奇数和
- f:求5的阶乘
- g:在控制台打印水仙花数
- h:统计水仙花个数
- i:改进版的回文数
- 一个五位数
- 个位 = 万位
- 十位 = 千位
- 个位 + 十位 + 千位 + 万位 = 百位
- j:统计1-1000之间同时满足如下条件的数据有多少个
- x%3==2
- x%5==3
- x%7==2
- (3)while循环
- A:基本格式
- while(判断条件语句) {
- 循环体语句;
- }
- 扩展格式:
- 初始化语句;
- while(判断条件语句){
- 循环体语句;
- 控制条件语句;
- }
- 通过查看这个格式,我们就知道while循环可以和for循环等价转换。
- B:while的练习
- 把for语句的练习用while改进
- C:for和while的区别
- a:使用上的区别
- for语句的那个控制条件变量,在循环结束后不能在使用了。
- 而while的可以继续使用。
- b:理解上的区别
- for适合于一个范围的判断
- while适合次数不明确的
- 举例:吃葡萄
- D:案例:
- a:珠穆朗玛峰问题
- b:小芳存钱问题(break以后才能做)
- (4)do...while循环
- A:基本格式
- do {
- 循环体语句;
- }while(判断条件语句);
- 扩展格式:
- 初始化语句;
- do {
- 循环体语句;
- 控制条件语句;
- }while(判断条件语句);
- 通过查看格式,我们就可以看出其实三种循环的格式可以是统一的。
- B:三种循环的区别
- a:do...while循环至少执行一次循环体
- b:for和while必须先判断条件是否是true,然后后才能决定是否执行循环体
- (5)循环使用的注意事项(死循环)
- A:一定要注意修改控制条件,否则容易出现死循环。
- B:最简单的死循环格式
- a:while(true){...}
- b:for(;;){}
- 3:控制跳转语句(掌握)
- (1)break:中断的意思
- A:用在循环和switch语句中,离开此应用场景无意义。
- B:作用
- a:跳出单层循环
- b:跳出多层循环,需要标签语句的配合
- (2)continue:继续
- A:用在循环中,离开此应用场景无意义。
- B:作用
- a:跳出单层循环的一次,可以继续下一次
- C:填空题
- for(int x=1; x<=10; x++) {
- if(x%3 == 0) {
- //补齐代码
- }
- System.out.println("Java基础班");
- }
- 如何让控制台输出2次:Java基础班
- 如何让控制台输出7次:Java基础班
- 如何让控制台输出13次:Java基础班
- (3)return:返回
- A:用于结束方法的,后面还会在继续讲解和使用。
- B:一旦遇到return,程序就不会在继续往后执行。
Java选择结构、循环结构的更多相关文章
- Java流程控制以及顺序、选择、循环结构
目录 用户交互Scanner Scanner对象 hasNext()与next() hasNextLine()与nextLine() Scanner进阶用法 求和与平均数 顺序结构 选择结构 if单选 ...
- Java基础(三)选择和循环结构
一.选择结构,条件判断 1.if 语句 一个 if 语句包含一个布尔表达式和一条或多条语句.如果布尔表达式的值为 true,则执行 if 语句中的代码块,否则执行 if 语句块后面的代码. impor ...
- java基础07 循环结构
public class While02 { public static void main(String[] args) { /** * while(循环条件){ * 循环体(循环操作) * } * ...
- java里的分支语句--程序运行流程的分类(顺序结构,分支结构,循环结构)
JAVA里面的程序运行流程分三大类: 1,顺序结构:顺序结构就是依次执行每一行代码 2,分支结构:分支结构就是按不同的条件进行分支 3,循环结构:一段代码依条件进行循环执行. 其中,分支结构有两大类: ...
- java学习:循环结构的使用规则和注意事项
循环结构的基本组成部分,一般可分为四部分: 初始化语句:在循环开始最初执行,而且只做唯一一次 条件判断:如果成立,则循环继续:如果不成立,则循环退出. 循环体:重复要做的事情内容,若干行语句. 进步语 ...
- Java中的循环结构(二)
循环结构(二) 学习本章有道的单词: rate:速度,比率 young:年轻的,年少 schedule:时间表,调度 neggtive:消极的;否定 customer:顾客,观众 birthday:生 ...
- 【Java】Java_14 循环结构
循环结构 当型:当P条件成立时(T),反复执行A,直到P为“假”时才停止循环. 直到型:先执行A, 再判断P,若为T,再执行A,如此反复,直到P为F. 1.While循环 while循环的基本格式和流 ...
- java 基础 04 循环结构 一维数组
内容: (1)循环结构 (2)一维数组 1.循环结构 1.1for循环 (1)语法格式 for(初始化表达式1;条件表达式2;修改初始化表达式3){ 循环体; } (2)执行流程 执行初始化表达式 = ...
- java 基础 03 运算符 分支结构 循环结构
今天内容: (1)运算符 (2)分支结构 (3)循环结构 1运算符 1.1赋值运算符 (1)简单赋值 = 表示赋值运算符,用于将=右边的数据赋值给=左边的变量来覆盖原来的数值. 笔试题: ia == ...
- Java中的循环结构
1.while循环结构 语法: while(循环条件){ //循环操作 } while循环结构流程图: 举例: int i = 1; while(i <= 100){ System.out.pr ...
随机推荐
- 大S《美容大王》内容80%都是没用的东西
揭20位明星真实人品 我在她大陆的企划公司工作过,见过她N次了,对人态度蛮不错的,而且很爱开玩笑,但感觉很假很抠门.只要一回公司她就黏着请她吃饭.她很主动很霸道,她和周渝民交往,原因之一就是周什么都听 ...
- java 集合2(迭代器)
迭代器方法:(把迭代器想象成抓娃娃机的爪子) hasNext() 问是否有元素可遍历,如果有元素可以遍历,返回true,否则返回false 工作原理:这一个迭代的过程是这样的,获取到迭代器时候 ...
- 能源项目xml文件 -- app-init.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- Spring3.1新特性
一.Spring2.5之前,我们都是通过实现Controller接口或其实现来定义我们的处理器类. 二.Spring2.5引入注解式处理器支持,通过@Controller 和 @RequestMa ...
- centos nginx 安装
1.下载 wget http://nginx.org/download/nginx-1.7.8.tar.gz 2.解压 tar -zxvf nginx-1.7.8.tar.gz 3.切换目录 cd n ...
- p标签中的span标签文字垂直居中对齐
<p>轻舞飞扬<span>第一次亲密接触</span></p> p标签的font-size:30px; span标签的font-size:24px; 让 ...
- JS实现会动的小车
2015-06-05怎么说呢,我想要实现的功能是很简单的,但是过程中,遇到不少问题. 我要实现的功能是页面右侧有辆小车,鼠标滚动或者拉动滚动条,小车消失,在底部点击“返还顶部”按钮后,页面缓慢向上滚动 ...
- js创建table表格
//js创建table表格var tr;var cell;for(var i=0;i<10;i++){ //创建一个tr tr=document.createElement('tr'); doc ...
- CentOS 6.2下SVN服务器的安装与配置
安装了一下SVN服务器,本文没有与Apache整合,过程如下: 一,下载相关软件: [root@youxia201 test]# wget http://subversion.tigris.org/d ...
- C#语法小用法
数据在存为数据库之前,用JS的encodeURIComponent进行编码,现需要在后台代码中进行解码,实现decodeURIComponent的功能, 如下: HttpUtility.UrlDeco ...