🧚♂️全套Java教程_Java基础入门教程,零基础小白自学Java必备教程👨💻004 # 第四单元 流程控制语句上 #
一、本单元知识点概述

二、本单元目标
(Ⅰ)重点知识目标
1.if语句的格式及执行流程
2.switch语句的格式及执行流程
(Ⅱ)能力目标
1.掌握if语句的格式及执行流程
2.掌握switch语句的格式及执行流程
3.了解case的穿透性
三、本单元知识详讲
4.1 流程控制
在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说,程序的流程对运行结果
有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现
我们要完成的功能。
4.1.1 顺序结构的概述★★★
根据代码编写的顺序,从上到下运行。
4.1.2 顺序结构的执行顺序★★★
案例演示:
1 public static void main(String[] args){
2 //顺序执行,根据编写的顺序,从上到下运行
3 System.out.println(1);
4 System.out.println(2);
5 System.out.println(3);
6 }
4.2 判断语句
4.2.1 if语句的格式★★
if语句第一种格式:
1 if(关系表达式){
2 语句体;
3 }
4.2.2 if语句的执行流程★★★
执行流程
首先判断关系表达式看其结果是true还是false
如果是true就执行语句体
如果是false就不执行语句体

案例演示:
1 public static void main(String[] args){
2 System.out.println("开始");
3 // 定义两个变量
4 int a = 10;
5 int b = 20;
6 //变量使用if判断
7 if (a == b){
8 System.out.println("a等于b");
9 }
10 int c = 10;
11 if(a == c){
12 System.out.println("a等于c");
13 }
14 System.out.println("结束");
15 }
4.2.3 if...else语句的格式★★
if语句第二种格式:
1 if(关系表达式) {
2 语句体1;
3 }else {
4 语句体2;
5 }
4.2.4 if...else语句的执行流程★★★★
执行流程
首先判断关系表达式看其结果是true还是false
如果是true就执行语句体1
如果是false就执行语句体2

案例演示:
1 public static void main(String[] args){
2 // 判断给定的数据是奇数还是偶数
3 // 定义变量
4 int a = 1;
5 if(a % 2 == 0) {
6 System.out.println("a是偶数");
7 } else{
8 System.out.println("a是奇数");
9 }
10 System.out.println("结束");
11 }
4.2.5 if..else if...else语句的格式★★
if语句第三种格式:
1 if (判断条件1) {
2 执行语句1;
3 } else if (判断条件2) {
4 执行语句2;
5 }
6 ...
7 else if (判断条件n) {
8 执行语句n;
9 } else {
10 执行语句n+1;
11 }
4.2.6 if..else if...else语句的执行流程★★★
执行流程
首先判断关系表达式1看其结果是true还是false
如果是true就执行语句体1
如果是false就继续判断关系表达式2看其结果是true还是false
如果是true就执行语句体2
如果是false就继续判断关系表达式…看其结果是true还是false
…
如果没有任何关系表达式为true,就执行语句体n+1。

案例演示:
1 public static void main(String[] args) {
2 // x和y的关系满足如下:
3 // x>=3 y = 2x + 1;
4 //‐1<=x<3 y = 2x;
5 // x<=‐1 y = 2x – 1;
6 // 根据给定的x的值,计算出y的值并输出。
7 // 定义变量
8 int x = 5;
9 int y;
10 if (x>= 3) {
11 y = 2 * x + 1;
12 } else if (x >= ‐1 && x < 3) {
13 y = 2 * x;
14 } else {
15 y = 2 * x ‐ 1;
16 }
17 System.out.println("y的值是:"+y); }
4.2.7 判断语句案例★★★
指定考试成绩,判断学生等级
90-100 优秀
80-89 好
70-79 良
60-69 及格
60以下 不及格
4.2.8 代码演示★★★
1 public static void main(String[] args) {
2 int score = 100;
3 if(score<0 || score>100){
4 System.out.println("你的成绩是错误的");
5 }else if(score>=90 && score<=100){
6 System.out.println("你的成绩属于优秀");
7 }else if(score>=80 && score<90){
8 System.out.println("你的成绩属于好");
9 }else if(score>=70 && score<80){
10 System.out.println("你的成绩属于良");
11 }else if(score>=60 && score<70){
12 System.out.println("你的成绩属于及格");
13 }else { System.out.println("你的成绩属于不及格");
14 }
15 }
4.3 选择语句
4.3.1 switch语句格式★★
switch语句格式:
switch(表达式) {
case 常量值1:
语句体1;
break;
case 常量值2:
语句体2;
break;
...
default:
语句体n+1;
break;
}
4.3.2 switch执行流程★★★★
执行流程
首先计算出表达式的值
其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结
束。
最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

案例演示:
1 public static void main(String[] args) {
2 //定义变量,判断是星期几
3 int weekday = 6;
4 //switch语句实现选择
5 switch(weekday) {
6 case 1:
7 System.out.println("星期一");
8 break;
9 case 2:
10 System.out.println("星期二");
11 break;
12 case 3:
13 System.out.println("星期三");
14 break;
15 case 4:
16 System.out.println("星期四");
17 break;
18 case 5:
19 System.out.println("星期五");
20 break;
21 case 6:
22 System.out.println("星期六");
23 break;
24 case 7:
25 System.out.println("星期日");
26 break;
27 default:
28 System.out.println("你输入的数字有误");
29 break;
30 }
switch语句中,表达式的数据类型,可以是byte,short,int,char,enum(枚举),JDK7后可以接收字符串。
4.3.3 case的穿透性★★★★
在switch语句中,如果case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运
行,直到遇到break,或者整体switch结束。
1 public static void main(String[] args) {
2 int i = 5;
3 switch (i){
4 case 0:
5 System.out.println("执行case0");
6 break;
7 case 5:
8 System.out.println("执行case5");
9 case 10:
10 System.out.println("执行case10");
11 default:
12 System.out.println("执行default");
13 }
上述程序中,执行case5后,由于没有break语句,程序会一直向后走,不会在判断case,也不会理会break,直接
运行完整体switch。
由于case存在穿透性,因此初学者在编写switch语句时,必须要写上break。
四、本单元知识总结
1. if语句的格式及执行流程。
2. switch语句的格式及执行流程。
🧚♂️全套Java教程_Java基础入门教程,零基础小白自学Java必备教程👨💻004 # 第四单元 流程控制语句上 #的更多相关文章
- 2019年最新超级有趣好玩的html+css网页布局课程,前端入门基础,html5+css3零基础入门课程-黑马程序员pink老师精心录制
大家好,我是黑马程序员pink老师!! 本次视频是前端零基础入门的课程,pink老师采取有趣好玩讲法,带你快乐的学习枯燥的html+css知识,学完之后让你能快速布局pc端页面.代码也可以讲的好玩有趣 ...
- PHP开发人员对JAVA的WEB开发入门(初版-基础知识)
最近准备对其他部门PHP开发的童鞋做一个对JAVA的培训.知己知彼,百战不殆,我要先了解点PHP,才能确认他们的基础,达到好的授课效果. PHP(原始为Personal Home Page的缩写,后正 ...
- 🤩全套Java教程_Java基础入门教程,零基础小白自学Java必备教程👻002 # 第二单元 常量,变量,数据类型 #
一.本单元知识点概述 二.本单元目标 (Ⅰ)重点知识目标 1.定义出各种数据类型的变量2.理解自动类型提升3.理解强制类型转换 (Ⅱ)能力目标 1.能够定义出所有类型的常量 2.理解Java中的基本数 ...
- ☠全套Java教程_Java基础入门教程,零基础小白自学Java必备教程👾#010 #第十单元 Scanner类、Random类 #
一.本单元知识点概述 (Ⅰ)知识点概述 二.本单元教学目标 (Ⅰ)重点知识目标 1.API的使用2.Scanner类的使用步骤3.Random类的使用 (Ⅱ)能力目标 1.掌握API的使用步骤2.使用 ...
- 全套Java教程_Java基础入门教程,零基础小白自学Java必备教程 #011 # 第十一单元 String&ArrayList #
一.本单元知识点概述 (Ⅰ)知识点概述 二.本单元教学目标 (Ⅰ)重点知识目标 1.ArrayList集合的常用方法2.ArrayList存储数据和遍历数据3.String类的构造方法4.String ...
- Java学习_Java快速入门
Java简介 安装完JDK后,需要设置一个JAVA_HOME的环境变量,它指向JDK的安装目录.在Windows下,它是安装目录,类似: C:\Program Files\Java\jdk-15 把J ...
- Java基础之路(四)--流程控制语句
本次我们来聊一聊Java当中的循环语句. 循环语句分三种:1.for2.while3.do--while. 三种循环语句的任务是不同的,方法也是不同的.当然他们各自的流程图也是不一样的. 3.1 wh ...
- python基础入门之函数基础
**python函数**一.def语名 def语名在运行的时候创建一个新的函数对象并且赋值一个变量名 一个def语句可以出现在任一语句可以出现的地方(python中所有的语名都是实时运行的,没有编译这 ...
- Java学习笔记(四)——流程控制语句
一.条件语句 1.if条件语句 (1)语法: if(条件) { 条件成立时的代码 } (2)执行过程 2.if else语句 if(条件) { 条件成立时的代码 } else { 不成立的代码 } 3 ...
随机推荐
- 微信小程序自定义顶部
wxml <view style="height:{{titleHeight}}px;background:{{background}}" class="user- ...
- 使用HttpURLConnection多线程下载
1 import java.io.IOException; 2 import java.io.InputStream; 3 import java.io.RandomAccessFile; 4 imp ...
- 【Azure 应用服务】使用PowerShell脚本上传文件至App Service目录
问题描述 使用PowerShell脚本上传文件至App Service目录的示例 脚本示例 对文件进行上传,使用的 WebClient.UploadFile 方法进行上传.当文件夹中包含子目录,执行以 ...
- springcloud超时重试机制的先后顺序
https://blog.csdn.net/zzzgd_666/article/details/83314833
- spring AOP事务
1 <bean id="tttt" class="com.ry.project.dataSouces.UserLogger"/> 2 <aop ...
- 【SpringMVC】RESTFul简介以及案例实现
RESTful 概念 REST:Representational State Transfer,表现层资源状态转移. 资源 资源是一种看待服务器的方式,即,将服务器看作是由很多离散的资源组成.每个资源 ...
- springmvc图片上传、json
springmvc的图片上传 1.导入相应的pom依赖 <dependency> <groupId>commons-fileupload</groupId> < ...
- 五分钟搞懂MySQL索引下推
大家好,我是老三,今天分享一个小知识点--索引下推. 如果你在面试中,听到MySQL5.6"."索引优化" 之类的词语,你就要立马get到,这个问的是"索引下推 ...
- noip模拟19/20
这两场考试大部分的题都考过,然鹅有的 \(trick\) 忘了,有的当时咕了(虽然现在还咕着) 首先是 \(v\) 这道题需要加一个小优化,对于较小的状态应该直接用数组记录,较大的再用 map 记 然 ...
- Intel® QAT加速卡之Linux上编程说明
QAT Software for Linux 1. Introduction 该程序员指南提供了有关软件体系结构和使用指南的信息. 相关的英特尔QAT软件库文档中记录了有关使用英特尔QuickAssi ...