【Java核心技术9】Java控制流语句详解:if、switch、for、while

引言

控制流语句是编程语言中不可或缺的一部分,它们决定了程序的执行路径,使程序能够根据不同的条件执行不同的代码块。在Java中,主要的控制流语句包括if、switch、for、while和do…while。
本文将通过实际代码示例,详细介绍这些控制流语句的使用方法。


一、if语句

if 语句用于基于条件执行代码块。它可以独立使用,也可以与 elseelse if 结合,形成更复杂的条件分支。

1. 示例代码:


//定义天气为25度
int temperature = 25;
if (temperature > 30) {//当天气大于30度System.out.println("天气热!少穿点衣服");
} else if (temperature > 20) {//当天气大于20度,小于30度System.out.println("天气舒适!");
} else {//当天气小于20度System.out.println("天凉多加衣!");
}

2. 执行结果:


天气舒适!

二、switch语句

switch 语句用于基于不同的 case 值执行不同的代码块。从Java 7开始,switch语句可以接受String类型,而不仅仅是整型和枚举类型。

1. 示例代码:


//定义一个字符串
String dayOfWeek = "星期五";
switch (dayOfWeek) {case "星期一"://当字符串等于 星期一 的时候执行以下语句System.out.println("今天是周一,激情coding!");break;case "星期五"://当字符串等于 星期五 的时候执行以下语句System.out.println("今天是周五,明天去踏青!");break;default://以上case条件判断都不匹配时执行以下语句System.out.println("今天啥也不是!");
}

2. 执行结果:


今天是周五,明天去踏青!

三、for循环

for 循环用于重复执行一段代码,直到满足特定条件。它由初始化、条件和更新三个部分组成。

1. 示例代码:

  • i=0:定义一个整型变量 i 并附值为 0
  • I<5:程序执行的前提是 i 必须小于 5
  • i++:每循环次 i 的值加 1

int j=1;
for (int i = 0; i < 5; i++) {System.out.println("第" + j++ + "次i的值为: " + (i));
}

2. 执行结果:


第1次i的值为: 0
第2次i的值为: 1
第3次i的值为: 2
第4次i的值为: 3
第5次i的值为: 4

四、while循环

while 循环在条件为 时重复执行代码块。条件在每次迭代前检查。

1. 示例代码:


int count = 0;
while (count < 5) {//当count小于5时执行以下语句System.out.println("当前数值: " + count);//每次循环count加1count++;
}

2. 执行结果:


当前数值: 0
当前数值: 1
当前数值: 2
当前数值: 3
当前数值: 4

五、do…while循环

do…while 循环至少执行一次代码块,然后在每次迭代后检查条件。

1. 示例代码:


int number = 0;
do {System.out.println("Number is: " + number);number++;
} while (number < 5);

2. 执行代码:


Number is: 0
Number is: 1
Number is: 2
Number is: 3
Number is: 4

六、控制流语句的高级用法

除了基本的使用方式,Java的控制流语句还有一些高级特性,如 breakcontinue 语句,它们可以控制循环的执行流程。

1. break语句:

break 语句用于立即退出循环或 switch 语句。

1)示例代码:


for (int i = 0; i < 5; i++) {if (i == 3) {break; // 立即退出循环}System.out.println(i);
}

2)执行结果:


0
1
2

2. continue语句

continue语句用于跳过循环体中剩余的部分,直接进入下一次迭代。

1)示例代码:


for (int i = 0; i < 5; i++) {if (i == 3) {continue; //跳过循环体剩余部分,即本次循环下面的打印语句不执行}System.out.println(i);
}

2)执行结果:


0
1
2
4

总结

控制流语句是编程中不可或缺的一部分,它们使程序能够根据条件执行不同的代码块,或者重复执行相同的代码块。

通过本文的示例代码,我们深入了解了if、switch、for和while这四种常见的控制流语句。掌握这些语句的用法,将有助于你编写出更加灵活和强大的程序。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/856235.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机毕业设计师hadoop+spark+hive知识图谱医生推荐系统 医生数据分析可视化大屏 医生爬虫 医疗可视化 医生大数据 机器学习 大数据毕业设计

流程&#xff1a; 1.Python爬虫采集中华健康网约10万医生数据&#xff0c;最终存入mysql数据库&#xff1b; 2.使用pandasnumpy/hadoopmapreduce对mysql中的医生数据进行数据分析&#xff0c;使用高德地图解析地理位置&#xff0c;并将结果转入.csv文件同时上传到hdfs文件系统&…

百度文心智能体平台(想象即现实):轻松上手,开启智能新时代!创建属于自己的智能体应用。

目录 1.1、文心智能体平台 1.2、创建智能体 1.3、智能体报名入口 1.4、古诗词小助手 1.5、访问我的智能体 我的智能体访问地址&#xff1a;https://mbd.baidu.com/ma/s/7u8kBFYA。 在这个全新的时代里&#xff0c;人工智能技术正以前所未有的速度发展&#xff0c;渗透到我…

办公室的奢华程度与公司管理层回报股东的意愿成反比?

在《战胜华尔街》的第四章&#xff0c;林奇又给出了一条选股法则“公司办公室的奢华程度与公司管理层回报股东的意愿成反比”。实际上&#xff0c;林奇在《战胜华尔街》中给出了很多奇奇怪怪的林奇法则&#xff0c;很多法则我实在看不出来跟投资有什么关系&#xff0c;比如“如…

LinkedHashMap详解

目录 LinkedHashMap详解1、LinkedHashMap的继承体系2、LinkedHashMap的特性介绍和代码示例①、特性②、适用场景使用LinkedHashMap 实现最简单的 LRU缓存 3、LinkedHashMap的构造函数4、LinkedHashMap是如何存储元素的&#xff0c;底层数据结构是什么&#xff1f;LinkedHashMap…

学习前台开发主要掌握的技能

学习前端开发需要掌握一系列的技能&#xff0c;这些技能大致可以分为以下几个类别&#xff1a;基础技术、前端框架和库、开发工具和环境、版本控制、性能优化和最佳实践。以下是详细的技能清单&#xff1a; 基础技术 1.HTML&#xff08;超文本标记语言&#xff09; HTML5的新…

C++: version `GLIBCXX_3.4.29‘ not found

最近遇到一个错误,在一个机器上编译sockperf,但是运行的时候出现错误: # ./sockperf ./sockperf: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.29 not found (required by ./sockperf)[root@RH8

用LoRA微调 Llama 2:定制大型语言模型进行问答

Fine-tune Llama 2 with LoRA: Customizing a large language model for question-answering — ROCm Blogs (amd.com) 在这篇博客中&#xff0c;我们将展示如何在AMD GPU上使用ROCm对Llama 2进行微调。我们采用了低秩适配大型语言模型(LoRA)来克服内存和计算限制&#xff0c;…

SAP赋能食品行业,确保安全与品质的双重飞跃

品安全与品质是消费者最关心的问题&#xff0c;也是食品企业的生命线。随着科技的发展和消费者需求的日益多样化&#xff0c;食品行业正面临着前所未有的挑战和机遇。SAP作为全球领先的企业资源规划&#xff08;ERP&#xff09;系统&#xff0c;为食品行业提供了全面的解决方案…

RealityCheck™电机监测和预测性维护模型

RealityCheck™电机 一个附加的软件工具箱&#xff0c;可实现条件监测和预测性维护功能&#xff0c;而无需依赖额外的传感器。相反&#xff0c;它使用来自电机控制过程的电子信息作为振动和其他传感器的代理。凭借其先进的信号处理和机器学习(ML)模型&#xff0c;RealityCheck …

惠普8596E频谱分析仪

8590E系列频谱分析仪具有各种各样的性能、功能&#xff0c;其价格亦是为适应用户的承受能力而确定的。用户可以从价格低廉、具有基本性能的分析仪直至高性能分析仪中进行挑选&#xff0c;无论选择哪种分析仪&#xff0c;都会感受到8590系列频谱分析仪便于使用且高度可靠。这些仪…

js获取年月日时分秒及星期几

最近发现好像写这种基础博客的很少&#xff0c;文章大部分都是几年前的&#xff0c;之前对于时间这块都是直接使用day.js 来处理&#xff0c;废话不多说&#xff0c;直接进入正题 const now new Date();//初始值 now.getFullYear()//年 now.getMonth() 1 //月 now.getDate()…

Palo Alto GlobalProtect App 6.3 (macOS, Linux, Windows, Andriod) - 端点网络安全客户端

Palo Alto GlobalProtect App 6.3 (macOS, Linux, Windows, Andriod) - 端点网络安全客户端 Palo Alto Networks 远程访问 VPN 客户端软件 请访问原文链接&#xff1a;https://sysin.org/blog/globalprotect-6/&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。…

呼叫中心许可证如何续证?

我们知道自从2019年下半年&#xff0c;工信部开始整治营销骚扰电话&#xff0c;呼叫中心许可证开始政策严控&#xff0c;虽未出台暂停审批的文件&#xff0c;但实际从2019年10月左右就暂停审批发新证包括续证。 2020年下半年逐步放开&#xff0c;但审核极其严格&#xff0c;20…

从0开始C++(三):构造函数与析构函数详解

目录 构造函数 构造函数的基本使用 构造函数也支持函数重载 构造函数也支持函数参数默认值 构造初始化列表 拷贝构造函数 浅拷贝和深拷贝 析构函数 总结 练习一下ヽ(&#xffe3;▽&#xffe3;)&#xff89; 构造函数 构造函数的基本使用 构造函数是一种特殊的成…

腾讯地图撒点并默认显示点位信息

实现步骤如下&#xff1a; 1、注册腾讯位置服务账号并获取 Key 2、需要创建一个地图容器&#xff0c;并使用腾讯地图的 API 初始化地图。通常涉及到设置地图的中心点、缩放级别和地图样式。 map new TMap.Map(document.getElementById(‘container’), { center: center, zo…

JavaScript 中 this 的使用方法详解

一、全局环境中的 this 在全局环境中&#xff0c;this 指向全局对象。在浏览器中&#xff0c;全局对象是 window&#xff1b;在 Node.js 中&#xff0c;全局对象是 global。 console.log(this); // 浏览器中输出&#xff1a;window在严格模式下&#xff0c;this 的值为 undef…

C++中的enum(枚举)是什么,以及与C中enum的不同之处

最近在看《A Tour of C 3rd》的时候发现 C 和 C 的 enum虽然使用起来比较相似&#xff0c;但是目的却略有不同。关于枚举的概念还请见之前写过一篇关于 C 的那篇博客《C语言中enum&#xff08;枚举&#xff09;详解》&#xff0c;这里不再赘述。本文侧重 C 与 C 不同的地方。 …

Vue56-组件的自定义事件

一、什么是自定义事件 二、子组件—【传值】—>父组件 2-1、prop属性 2-2、自定义事件 v-on在谁身上&#xff0c;就给谁绑定事件&#xff01; 给谁绑定的事件&#xff0c;想触发就找谁&#xff01; 2-3、prop属性VS自定义属性 2-4、简写形式 2-5、ref属性实现 加了ref属性…

软件监控发展简史

软件监控简史&#xff0c;从 00 年代开始。发生了什么变化&#xff1f;为什么事情变得如此神秘&#xff1f; 终端设备上日益重要的用户体验通过边缘计算和分布式计算不断得到改善。然而&#xff0c;服务质量的测量仍然使用基于服务器的原语进行。 我们的 2000 年软件监控是这样…