JavaSE-03 【流程控制语句】
文章目录
- JavaSE-03 【流程控制语句】
- 第一章 流程控制
- 1.1 流程概述
- 1.2 顺序结构
- 第二章 判断语句
- 2.1 判断语句---if
- 2.2 判断语句---if...else
- 2.3 判断语句---if...else if ... else
- 第三章 选择语句
- 3.1 选择语句--switch
- 3.2 case的穿透性
- 第四章 循环语句
- 4.1 循环概述
- 4.2 循环语句--for
- 4.3 循环语句--while
- 4.4 循环语句--do..while
- 4.5 循环语句的区别
- 4.6 break和continue用法
- 第五章 循环语句加强
- 5.1 死循环
- 5.2 嵌套循环
JavaSE-03 【流程控制语句】
第一章 流程控制
1.1 流程概述
在一个程序执行的过程中,每条语句的执行顺序对程序的结果是由直接影响的,
也就是,语句的流程对运行结果有着直接的影响,所以,必须清楚知道每条语句的执行流程,
并且,我们还需要通过控制语句的执行顺序来实现我们要完成的特定功能
1.2 顺序结构
顺序结构:就是根据编写的程序,从上到下的执行,如:
public static void main(String[] args) {//顺序执行:根据编写的程序,自上而下的执行。int a = 1;int b = 2; int c = a+b;System.out.println(c);
}
- 流程图

第二章 判断语句
2.1 判断语句—if
- 语法格式
if(关系表达式){语句体;
}
- 执行流程
- 1、先判断关系表达式,是true还是false- 2、如果是true,执行语句体,如果是false,则不执行

- 案例—Demo1_if
public class Demo1_if {public static void main(String[] args) {System.out.println("准备开始");int a = 10;int b = 20;if (a>b){System.out.println("a大于b");}int c = 10;if (a==c){System.out.println("a等于c");}System.out.println("程序执行完毕");}
}
2.2 判断语句—if…else
- 语法格式
if(判断语句){执行语句1;
}else{执行语句2;
}
- 执行流程

- 案例:Demo02_if_else
public class Demo02_if_else {public static void main(String[] args) {//判断奇偶数//键盘输入数据int a = new Scanner(System.in).nextInt();//判断奇偶数if (a%2==0){System.out.println(a+":a是偶数");}else {System.out.println(a+":a是奇数");}}
}
2.3 判断语句—if…else if … else
- 语法格式
if(判断条件1){执行语句1;
}else if(判断条件2){执行语句2
}
...
}else if(判断条件3){执行语句n;
}else{执行语句m;
}
- 执行流程
- 1、首选判断关系表达式1,是否为true,或false- 2、如果是true‘,执行语句体1,- 3、如果是false,再判断关系式2是否为true。或false- 4、如果是truw,执行语句体2- 5、...以此类推执行

- 案例:Demo03_if_elseif_else
public class Demo03_if_elseif_else {public static void main(String[] args) {//判断成绩大小int score = new Scanner(System.in).nextInt();if (score>90){System.out.println("成绩优秀");}else if (score>=80 && score<90){System.out.println("成绩好");}else if (score>=70 && score<80){System.out.println("成绩良好");}else if (score>=60 && score<70){System.out.println("成绩及格");}else {System.out.println("不及格,叫家长来");}}
}
第三章 选择语句
3.1 选择语句–switch
- switch的语法格式
switch(表达式){case 常量值1 : 语句体1;break;case 常量值2 : 语句体2;break;case 常量值3 : 语句体3;break;...default : 语句体n;break;
}
- 执行流程:
- 1、计算出表达式的值- 2、依次和case对应的常量值比较,一旦有对应的值,就执行相应的语句,执行过程中,遇到break结束- 3、如果所有的case对应常量值与表达式都不匹配,就执行default语句体,然后程序结束

- 案例:Demo05_Switch
public class Demo05_Switch {public static void main(String[] args) {//案例:判断星期几int num = new Scanner(System.in).nextInt();switch (num){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.println("周日");break;default:System.out.println("输入错误");break;//此处break可以省略,推荐保留不省略}}
}
3.2 case的穿透性
- switch语句使用的注意事项:
1、多个case后面的常量值不能重复
2、switch小括号中的数据类型:基本数据类型:byte、short、int、char引用数据类型:字符串,枚举等
3、switch的格式:比较灵活,前后顺序可以颠倒,break可以省略匹配到哪个case就从哪个位置向下执行,直到遇到break,或者整体代码结束
- 案例:Demo06_SwitchNotice
public class Demo06_SwitchNotice {public static void main(String[] args) {int num = 2;switch (num){case 1:System.out.println("孙悟空");break;case 2:System.out.println("猪八戒");//break;//没有break,则会穿透后续的casecase 3:System.out.println("沙和尚");break;case 4:System.out.println("唐僧");break;default:System.out.println("西天取经");break;}}
}
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bLB19BZj-1686187770015)(photo/JavaSE03_流程控制语句.assest/1664099132918.png)]](https://img-blog.csdnimg.cn/39463cc0fb5b4986951539ceeef6bea0.png)
第四章 循环语句
4.1 循环概述
循环语句可以在满足条件的情况下,反复执行某一段代码,
这样被重复执行的代码被称为循环体语句,
当反复执行这个循环时,需要在合适的时候,将循环判断条件修改为false,
从而结束循环,否则将一直执行下去形成死循环,
4.2 循环语句–for
- 语法格式:
for(初始化表达式1;布尔表达式2;步进表达式4){循环体3;
}
- 执行流程
- 1、执行顺序1234,直到2不满足为止- 2、表达式1:负责完成循环变量初始化- 3、表达式2:负责判断是否满足循环条件,不满足则跳出循环- 4、循环体3:具体执行的代码- 5、表达式4:循环后,循环条件所涉及变量的变化情况
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XhQH5KIa-1686187770023)(photo/JavaSE03_流程控制语句.assest/1664101785534.png)]](https://img-blog.csdnimg.cn/44029131a3134a5fa537eb3fc91b6bd2.png)
- 案例:Demo07_For
public class Demo07_For {public static void main(String[] args) {System.out.println("程序开始执行");for (int i = 1;i<=100;i++){//循环体System.out.println("我是第:"+i+" 次循环");}System.out.println("程序执行完毕");}
}
4.3 循环语句–while
- 语法格式
初始化表达式1;
while(布尔表达式2){循环体3;步进表达式4;
}
- 执行流程:
- 1、执行顺序:1234--234--234-,直到2不满足为止- 2、初始化表达式1:负责完成循环变量的初始化- 3、表达式2:负责判断是否满足条件,不满足则跳出循环- 4、循环体3:具体语句的执行- 5、步进表达式4:循环后,循环变量的变化情况

- 案例:Demo08_While
public class Demo08_While {public static void main(String[] args) {//扩展格式//初始化语句int i = 1;//判断条件while (i<=100){//循环体System.out.println("我被循环的次数是:"+i);//步进语句i++;}//标准化格式while (i<=100){//条件判断//循环体System.out.println("此次循环结束");}}
}
4.4 循环语句–do…while
- 格式
初始化表达式1;
do{循环体2;步进表达式3;
}while(布尔表达式4)
- 执行流程
- 1、执行顺序:1234,直到不满足表达式4为止- 2、表达式1:负责完成循环变量的初始化- 3、循环体2:具体语句的执行- 4、表达式3:循环后,循环变量的变化情况- 5、表达式4:负责判断是否满足条件,不满足则跳出循环

- 案例:Demo09_DoWhile
public class Demo09_DoWhile {public static void main(String[] args) {//初始条件int i = 1;do {//循环体System.out.println("我是do执行的第:"+i+"次");//步进语句i++;}while (i<=20);//判断条件}
}
4.5 循环语句的区别
- 1、如果条件判断从不满足,那么for和while执行0次,但是do-while会执行一次
- 2、for循环的变量在小括号中定义,只有循环内部才能使用
- 3、while和do-while的初始化数据本身就在循环的外面
4.6 break和continue用法
- break语句的用法
- 1、可以使用在switch语句当中,一旦执行,整个switch语句立即结束
- 2、可以使用在循环语句中,一旦执行,整个循环结束
/*** break的用法* 1、可以使用在switch语句当中,一旦执行,整个switch语句立即结束* 2、可以使用在循环语句中,一旦执行,整个循环结束*/
public class Demo11_Break {public static void main(String[] args) {for (int i=1;i<10;i++){if (i==5){break;//若条件满足,那么就会结束循环}System.out.println("此时循环到的次数是"+i);}}
}
- continue 语句的用法
一旦执行,立即跳过当前循环剩余内容,开始下一轮循环
/*** continue的用法* 一旦执行,立即跳过当前循环剩余内容,开始下一轮循环*/
public class Demo12_Continue {public static void main(String[] args) {for (int i=1;i<10;i++){if (i==5){continue;//表示跳出当前循环,执行下一轮循环}System.out.println("此时的循环次数是:"+i);}}
}
第五章 循环语句加强
5.1 死循环
- 死循环: 就是循环中的条件永远为true,能执行但不会停下来的循环
- 死循环出现的原因:程序漏洞、程序员刻意操作
/*** 死循环:能执行但不会停下来的循环* 格式:* while(true){* 循环体* }*/
public class Demo13_SiXunHuan {public static void main(String[] args) {while (true){int a = 10;System.out.println(a+=10);//ctrl+c停止运行}}
}
5.2 嵌套循环
- 嵌套循环
循环的嵌套是指一个循环的循环体是另一个循环,
比如for循环qiantaofor循环,总循环次数 = 外循环次数*内循环次数
- 嵌套循环格式:
for(初始化表达式1;循环条件2;步进表达式7){for(初始化表达式3;循环条件4;步进表达式6){循环体5;}
}
- 执行流程
- 执行顺序:123456---456---723456---456- 外循环一次,内循环多次
- 案例:Demo14_NestingFor
/*** 嵌套循环* 打印5*10的矩形*/
public class Demo14_NestingFor {public static void main(String[] args) {//外循环:外循环循环5次for (int i=1;i<=5;i++){//内循环:内循环在外循环循环1次的基础上,都要进行循环10次for (int j=1;j<=10;j++){System.out.print("*");}System.out.println("\n");}}
}
相关文章:
JavaSE-03 【流程控制语句】
文章目录 JavaSE-03 【流程控制语句】第一章 流程控制1.1 流程概述1.2 顺序结构 第二章 判断语句2.1 判断语句---if2.2 判断语句---if...else2.3 判断语句---if...else if ... else 第三章 选择语句3.1 选择语句--switch3.2 case的穿透性 第四章 循环语句4.1 循环概述4.2 循环语…...
笔记本电脑的BIOS是怎么保护安全的?
随着攻防技术的不断演进,像BIOS攻击、高级网络代码攻击等手段层出不穷,“受害者”也不仅限于企业级服务器、存储,很多魔爪也开始伸向了拥有商业机密数据的PC。 BIOS是Basic Input/Output System(基本输入/输出系统)的…...
Xubuntu之将rm删除内容移至回收站(一百七十七)
简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…...
STM32F407实现1588v2(ptpd)
硬件: STM32F407ZGT6开发板 软件: VSCode arm-none-eabi-gcc openOCD st-link 在github搜到一个在NUCLEO-F429ZI开发板上移植ptpd的example,因为和F407差别很小,所以就打算用这个demo移植到手头的开发板上。因为目前只需要…...
架构师如何找到自己的商业模式
作为一个架构师,必须要在有限的资源下最大化架构活动所带来的商业价值。对于任何一个架构活动而言,架构师的可用资源,包括商业成本、研发成本、时间成本、迁移成本等等,都是非常有限的。但架构活动就是要在这些限制条件之下&#…...
SQLServer2022安装(Windows),已验证
一、SQLServer2022下载 1、官网下载地址 SQL Server 下载 | Microsoft 2、下载安装包 2.1、选择Developer版本,立即下载。 2.2、打开下载文件夹,双击运行SQL2022-SSEI-Dev.exe 尝试运行SQL2022-SSEI-Dev.exe,会收到以下信息:“…...
facenet, dlib人脸识别,人体检测,云数据库mysql,QQ邮箱,手机验证码,语音播报
目录 部分代码展示: 录入部分 识别部分编辑 活体检测部分编辑 同步到云数据库MySQL 其他操作 部分图片展示: 完整代码加ui链接: 涉及到的一些知识点的文章 部分代码展示: 录入部分 识别部分 活体检测部分 同步到云数…...
Spring Boot 面试题——定时任务
目录 1.什么是 cron 表达式?如何使用?2.Scheduled 注解有什么作用?3.介绍一下 spring-boot-starter-quartz。4.在 Spring Boot 中如何实现定时任务?4.1.使用 Schedule 注解4.2.Quartz 框架 1.什么是 cron 表达式?如何使…...
总建面64万平,配3所幼儿园+54班九年制学校,坪山江岭竹元规划
近日,坪山区城市更新和土地整备局发布,关于《坪山区马峦街道江岭竹元片区城市更新单元规划》已通过深圳市城市规划委员会法定图则委员会审批。现予以公告。 项目位于坪山区马峦街道,南邻南坪快速路,北邻比亚迪路,东西两…...
python3 爬虫相关学习7:使用 BeautifulSoup下载网页图片到本地文件夹
目录 1 一个爬图片pic的代码的例子 1.1 学习的原文章 1.2 原始代码的问题总结 问题1 问题2 问题3 其他问题 1.3 原始代码 2 直接在cmd里 python运行报错 和 处理 2.1 运行报错 2.2 报错原因: 没有提前安装这个bs4 模块 2.3 如何提前知道我的python环境…...
windows平台python脚本执行环境搭建笔记
1.python脚本环境下载 这里是原始发布源: https://www.python.org/downloads/release/python-3114/https://www.python.org/downloads/release/python-3114/安装时记得添加进系统path,这样你可以随时调用python环境。 2.扩展模块的安装 step1.找到py…...
MyBatis的动态SQL之OGNL(Object-Graph Navigation Language)表达式以及各种标签的用法
MyBatis的动态SQL 1、if标签的用法2、choose标签的用法3、where标签4、set标签5、trim的用法6、foreach标签7、bind标签 使用过JDBC或者是其他的ORM框架的开发者都知道,在很多操作中都需要去根据具体的条件进行SQL语句的拼接,并且在有些时候一些标点符号…...
基于Java+Springboot+Vue的二次元商城网站设计与实现
博主介绍:✌擅长Java、微信小程序、Python、Android等,专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟 Java项目精品实战案…...
MyBatis操作数据库实现
说明:MyBatis是作用于三层架构开发,数据访问层(Data Access Object)的框架,用于访问数据库,对数据进行操作。 一、环境搭建 首先,创建一个SpringBoot模块,然后把MyBatis的环境搭建…...
Git GitLab 使用及规范
Git 基本操作 Git安装配置及基本使用 从官网下载安装包,手动完成安装。打开Git Bash命令行工具,执行命令ssh-keygen -t rsa -C Email-Addresss生成一个密钥对。登录到GitLab,点击右上角你的用户头像,点击Edit Profile settings&…...
【SpringCloud——Sentinel】
一、什么是雪崩? 微服务调用链路中的某个服务发生故障,引起整个链路中的所有微服务都不可用,这就是雪崩。 二、解决雪崩问题的常见措施 1、超时处理 设定超时时间,请求超过一定时间没有响应就返回错误信息,不会无休…...
面试专题:计算机网络常见面试点总结
socket、tcp、udp、http 的认识及区别 socket、tcp、udp、http 的认识及区别 一、先来一个讲TCP、UDP和HTTP关系的 1、TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。 在传…...
PageHelper失效问题
问题出现记录: 修改代码后,出现分页失效问题,原本的代码再设置了 PageHelper.startPage(pageNum, pageSize);后只有一个mysql查询,我在原本的业务查询前,新增了其他的Mysql查询,导致原需要分页的查询失效 …...
Linux常用命令——grep命令
在线Linux命令查询工具 grep 强大的文本搜索工具 补充说明 grep(global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本&…...
学校热水供应系统方案
学校热水供应系统是现代化校园建设的重要组成部分。一套高效、可靠、安全、环保的热水供应系统,不仅能够满足学生、教职工的日常生活需求,也能提高学校形象和竞争力。 在设计学校热水供应系统方案时,需要考虑以下几个方面: 一、热…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
TDengine 快速体验(Docker 镜像方式)
简介 TDengine 可以通过安装包、Docker 镜像 及云服务快速体验 TDengine 的功能,本节首先介绍如何通过 Docker 快速体验 TDengine,然后介绍如何在 Docker 环境下体验 TDengine 的写入和查询功能。如果你不熟悉 Docker,请使用 安装包的方式快…...
3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
【论文阅读28】-CNN-BiLSTM-Attention-(2024)
本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...
【Go语言基础【13】】函数、闭包、方法
文章目录 零、概述一、函数基础1、函数基础概念2、参数传递机制3、返回值特性3.1. 多返回值3.2. 命名返回值3.3. 错误处理 二、函数类型与高阶函数1. 函数类型定义2. 高阶函数(函数作为参数、返回值) 三、匿名函数与闭包1. 匿名函数(Lambda函…...
使用Spring AI和MCP协议构建图片搜索服务
目录 使用Spring AI和MCP协议构建图片搜索服务 引言 技术栈概览 项目架构设计 架构图 服务端开发 1. 创建Spring Boot项目 2. 实现图片搜索工具 3. 配置传输模式 Stdio模式(本地调用) SSE模式(远程调用) 4. 注册工具提…...
GitFlow 工作模式(详解)
今天再学项目的过程中遇到使用gitflow模式管理代码,因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存,无论是github还是gittee,都是一种基于git去保存代码的形式,这样保存代码…...
