1-8Java循环结构

news/2024/10/8 13:26:37/文章来源:https://www.cnblogs.com/positive-boy/p/18403605

Java 循环结构

顺序结构的程序语句只能被执行一次。如果您想要同样的操作执行多次,,就需要使用循环结构。

Java中有三种主要的循环结构:

  • while 循环
  • do…while 循环
  • for 循环

在Java5中引入了一种主要用于数组的增强型for循环。

while 循环

while是最基本的循环,它的结构为:

`while``( 布尔表达式 ) {`` ``//循环内容``}`

只要布尔表达式为 true,循环就会一直执行下去。

实例

`public` `class` `Test {``  ``public` `static` `void` `main(String args[]) {``   ``int` `x = ``10``;``   ``while``( x < ``20` `) {``     ``System.out.print(``"value of x : "` `+ x );``     ``x++;``     ``System.out.print(``"\n"``);``   ``}``  ``}``}`

以上实例编译运行结果如下:

`value of x : ``10``value of x : ``11``value of x : ``12``value of x : ``13``value of x : ``14``value of x : ``15``value of x : ``16``value of x : ``17``value of x : ``18``value of x : ``19`

do…while 循环

对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。

do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。

`do` `{``    ``//代码语句``} ``while``(布尔表达式);`

注意:布尔表达式在循环体的后面,所以语句块在检测布尔表达式之前已经执行了。 如果布尔表达式的值为 true,则语句块一直执行,直到布尔表达式的值为 false。

实例

`public` `class` `Test {``  ``public` `static` `void` `main(String args[]){``   ``int` `x = ``10``;``   ``do` `{``     ``System.out.print(``"value of x : "` `+ x );``     ``x++;``     ``System.out.print(``"\n"``);``   ``} ``while``( x < ``20` `);``  ``}``}`

以上实例编译运行结果如下:

`value of x : ``10``value of x : ``11``value of x : ``12``value of x : ``13``value of x : ``14``value of x : ``15``value of x : ``16``value of x : ``17``value of x : ``18``value of x : ``19`

for循环

虽然所有循环结构都可以用 while 或者 do...while表示,但 Java 提供了另一种语句 —— for 循环,使一些循环结构变得更加简单。

for循环执行的次数是在执行前就确定的。语法格式如下:

`for``(初始化; 布尔表达式; 更新) {``  ``//代码语句``}`

关于 for 循环有以下几点说明:

  • 最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
  • 然后,检测布尔表达式的值。如果为 true,循环体被执行。如果为false,循环终止,开始执行循环体后面的语句。
  • 执行一次循环后,更新循环控制变量。
  • 再次检测布尔表达式。循环执行上面的过程。

实例

`public` `class` `Test {``  ``public` `static` `void` `main(String args[]) {``   ``for``(``int` `x = ``10``; x < ``20``; x = x+``1``) {``     ``System.out.print(``"value of x : "` `+ x );``     ``System.out.print(``"\n"``);``   ``}``  ``}``}`

以上实例编译运行结果如下:

`value of x : ``10``value of x : ``11``value of x : ``12``value of x : ``13``value of x : ``14``value of x : ``15``value of x : ``16``value of x : ``17``value of x : ``18``value of x : ``19`

Java 增强 for 循环

Java5 引入了一种主要用于数组的增强型 for 循环。

Java 增强 for 循环语法格式如下:

`for``(声明语句 : 表达式) {``  ``//代码句子``}`

声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素的值相等。

表达式:表达式是要访问的数组名,或者是返回值为数组的方法。

实例

`public` `class` `Test {``  ``public` `static` `void` `main(String args[]){``   ``int` `[] numbers = {``10``, ``20``, ``30``, ``40``, ``50``};` `   ``for``(``int` `x : numbers ){``     ``System.out.print( x );``     ``System.out.print(``","``);``   ``}``   ``System.out.print(``"\n"``);``   ``String [] names ={``"James"``, ``"Larry"``, ``"Tom"``, ``"Lacy"``};``   ``for``( String name : names ) {``     ``System.out.print( name );``     ``System.out.print(``","``);``   ``}``  ``}``}`

以上实例编译运行结果如下:

`10``,``20``,``30``,``40``,``50``,``James,Larry,Tom,Lacy,`

break 关键字

break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。

break 跳出最里层的循环,并且继续执行该循环下面的语句。

语法

break 的用法很简单,就是循环结构中的一条语句:

`break``;`

实例

`public` `class` `Test {``  ``public` `static` `void` `main(String args[]) {``   ``int` `[] numbers = {``10``, ``20``, ``30``, ``40``, ``50``};` `   ``for``(``int` `x : numbers ) {``     ``// x 等于 30 时跳出循环``     ``if``( x == ``30` `) {``      ``break``;``     ``}``     ``System.out.print( x );``     ``System.out.print(``"\n"``);``   ``}``  ``}``}`

以上实例编译运行结果如下:

`10``20`

continue 关键字

continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。

在 for 循环中,continue 语句使程序立即跳转到更新语句。

在 while 或者 do…while 循环中,程序立即跳转到布尔表达式的判断语句。

语法

continue 就是循环体中一条简单的语句:

`continue``;`

实例

`public` `class` `Test {``  ``public` `static` `void` `main(String args[]) {``   ``int` `[] numbers = {``10``, ``20``, ``30``, ``40``, ``50``};` `   ``for``(``int` `x : numbers ) {``     ``if``( x == ``30` `) {``    ``continue``;``     ``}``     ``System.out.print( x );``     ``System.out.print(``"\n"``);``   ``}``  ``}``}`

以上实例编译运行结果如下:

`10``20``40``50`

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

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

相关文章

鼠标悬停显示的轮播图

今日整理,发现这种轮播图是最难实现的一种, 1.再循环中难以控制单一品类商品显示 解决办法: 在外面的主类里面添加&:hover触发标签属性的更改,这样可以单一作用 2.在循环中触发事件,所有的同一事件都会触发 解决办法:先建立模版控制排版,再从单一内容开始微调 <script s…

如何把网页的公式优雅地拷贝到word中:数学公式识别神器—Mathpix Snip

这个编辑器其实在把chatgpt的公式粘贴到word中时就已经使用了,用的是网页版。 现在下载了软件(但是好像一个月试用期过后得收费?但是就目前来说,体验感真的超级好) 把公式复制粘贴转成mathtype公式 可以截取电脑屏幕上的图像,如果图像上面有公式的话,就会识别,之后可以…

Redis 入门 - 图形化管理工具如何选择,最全分类

Redis图形化管理工具可分为四类:命令行工具、桌面客户端工具、网页工具、插件工具。看看哪一款适合你呢?工欲善其事必先利其器,上一章Redis服务环境已经搭建完成,现在就需要一个趁手的工具,有个好工具可以做到事半功倍。 Redis图形化管理工具五花八门,可供选择的很多,大…

Javaweb-事务

注意在当前窗口是修改了的:而在其他窗口是不修改的:select @@autocommit;修改为手动提交:

格路计数

前言 完全借鉴于 洛谷日报 前提条件 在一个网格图上, 每一次可以从 \((x,y)\) 走到 \((x+1,y-1)\) 或者 \((x+1,y-1)\) 限制是一条直线 \(y=k\) 题外话 我们其实可以发现这和每一次可以从 \((x,y)\) 走到 \((x+1,y)\) 或者 \((x, y+1)\) 限制是一条 \(45\)的斜线 \(y=x+k\) 是等…

9.2-9.8 总结

zhicheng123456做题 因为联考众多,所以说只有不多的做题。主要得知了两个结论:找树剖到根的轻链(动态)的方法和把线段(均匀随机分界点)分为 \(n\) 段的 \(k\) 短值的计算。 联考:https://www.cnblogs.com/british-union/p/liankao.html 还是时常在简单的东西上失败,但是…

第一章预习作业

第一周预习报告 学习内容《WindowsC/C++加密解密实战》第1,2章 第一章概念复习 第二章主要在Linux(Ubuntu,openEuler)上把软件更新到最新版(3.0版本以上),如果默认不是,参考下面脚本。 AI对学习内容的总结 要求 让AI(kimi,元宝等)阅读学习内容并进行总结,教材内容可使…

9月第一周漏洞学习

蜂信物联(FastBee)物联网平台download存在任意文件下载漏洞 漏洞描述 FastBee是一款开源物联网平台,致力于为全球开发者提供稳定、搞笑的物联网解决方案。FastBee在download接口中存在任意文件下载漏洞,可能导致敏感信息泄露、数据盗窃及其他安全风险,从而对系统和用户造成…

AtCoder Beginner Contest 252 A~G 题解

前言这是我第一次写7题(A~G)的ABC题解,若有写得不好或者不到位的地方请多多指教,我将万分感激,感谢大家的支持!A - ASCII code 题目大意 给定正整数\(N\),输出ASCII码是\(N\)的字母。 \(97\le N\le 122\) 输入格式 \(N\) 输出格式 输出ASCII码是\(N\)的字母。 分析 注意…

苯乙烯

周线 日线: 60分钟: 短线看能否走出下跌五浪吧:观望

AtCoder Beginner Contest 205 A~E 题解

A - kcal 题目大意 我们有一种每\(100\)毫升含有\(A\)千卡热量的饮料。\(B\)毫升的这种饮料含有多少千卡热量? \(0\le A, B\le 1000\) 输入格式 \(A~B\) 输出格式 输出\(B\)毫升这种饮料包含的的千卡数。最大允许浮点数精度误差\(10^{-6}\)。 样例\(A\) \(B\) 输出\(45\) \(20…

AtCoder Beginner Contest 196 A~E 题解

A - Difference Max 题目大意 给定四个整数\(a,b,c\)和\(d\)。 我们要选择两个整数\(x\)和\(y\)(\(a\le x\le b\);\(c\le y\le d\))。输出最大的\(x-y\)。 \(-100\le a\le b\le 100\) \(-100\le c\le d\le 100\) 输入格式 \(a~~b\) \(c~~d\) 输出格式 输出最大的\(x-y\)。 样…