Java 循环结构 - while ,do…while 及 for,

目录

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

while 循环

实例

do…while 循环

实例

for循环

实例

三种循环之间的区别

增强 for 循环

实例

break 关键字

语法

实例

continue 关键字

语法

实例


顺序结构的程序语句只能被执行一次。

如果您想要同样的操作执行多次,就需要使用循环结构。

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

  • while
  • do…while
  • for

while 循环

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

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

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

实例

public static void main(String[] args) {int i = 0;while (i < 100) {System.out.println("HelloWorld");i++;}}

do…while 循环

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

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

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

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

实例

    public static void main(String[] args) {int i = 0;do {System.out.println("HelloWorld");i++;} while (i < 100);}

for循环

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

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

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

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

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

实例

public static void main(String[] args) {int i;for (i = 0; i < 100; i++) {System.out.println("HelloWorld");}
}

三种循环之间的区别

        for循环和while循环都是先判断,如果等于true,则再执行循环体内容,而do…while循环则是先执行一次循环体内容,再进行判断。

增强 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(",");}}
}

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");}}
}

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");}}
}

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

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

相关文章

租用云服务器租时要注意的问题有哪些?

随着云计算的不断发展&#xff0c;对云计算服务器的需求也越来越大。 那么&#xff0c;我们应该如何以正确的态度和方法来选择云服务器呢&#xff1f; 租用云服务器需要注意哪些问题&#xff1f; 1.了解您需要的云服务类型 了解您的云计算需求将使您了解您正在寻求的服务类型…

web运行时安全

1.输入验证 对传递的数据的格式、长度、类型&#xff08;前端和后端都要&#xff09;进行校验。 对黑白名单校验&#xff1a;比如前端传递了一个用户名&#xff0c;可以搜索该用户是否在白名单或者黑名单列表。 针对黑名单校验&#xff0c;比如&#xff1a; // 手机号验证…

让两个电脑通信的方法(TCP连接,UDP连接,C/S架构)

目录 TCP-面向连接UDP-面向无连接C/S架构服务器和客户端的工作过程C/S架构例子 让两个电脑通信的方法是 在C/S的基础上&#xff0c;采用TCP和UDP的方式连接 TCP-面向连接 UDP-面向无连接 C/S架构 服务器和客户端的工作过程 C/S架构例子 服务器与客户端通信的过程类似公司与客户…

微信小程序云开发教程——墨刀原型工具入门(添加交互事件)

引言 作为一个小白&#xff0c;小北要怎么在短时间内快速学会微信小程序原型设计&#xff1f; “时间紧&#xff0c;任务重”&#xff0c;这意味着学习时必须把握微信小程序原型设计中的重点、难点&#xff0c;而非面面俱到。 要在短时间内理解、掌握一个工具的使用&#xf…

殿堂级Flink源码极精课程预售

一、为什么我们要读源码? 1、让个人技术快速成长: 优秀的开源框架,底层的源码设计思想也非常优秀,同时还有含有大量的设计模式和并发编程技术&#xff0c;优秀的解决方案,熟读源码对猿们技术提升有很大帮助 2、新技术学习能力: Java开源码框架的源码熟读后&#xff0c;若出现…

第一篇:参考资料地址

javaGuide JavaGuide&#xff08;Java学习&面试指南&#xff09; | JavaGuide 清华学生总结的 小林coding labuladong labuladong 的算法笔记 | labuladong 的算法笔记 【华仔说技术】kafka的系列文章 https://mp.weixin.qq.com/mp/appmsgalbum?__bizMzg3MTcxMDgxNA…

【Datawhale组队学习:Sora原理与技术实战】Sora技术原理

Sora能力边界探索 最大支持60秒高清视频生成&#xff0c;以及基于已有短视频的前后扩展&#xff0c;同时保持人物/场景的高度一致性如奶茶般丝滑过渡的视频融合能力同一场景的多角度/镜头的生成能力具有动态摄像机运动的视频。随着摄像机的移动和旋转&#xff0c;人和其 他场景…

x-pack的破解方式和免费jar包!!可直接用!!

原理介绍 我们平时为es安装x-pack组件&#xff0c;用elasticsearch-plugin install x-pack &#xff0c;安装成功后。 1.cd $es目录/pulgins/x-pack 里面有一个x-pack-5.6.2.jar &#xff0c;将jar包反编译&#xff0c;然后将里面的licence的程序改下。再编译成jar包。 2…

通过笔记本桥接打印机组成网络打印机其它电脑与之相连各种问题汇总

根据描述需要一台低配闲置笔记本&#xff08;有无线网卡&#xff09;&#xff0c;一台普通台式打印机&#xff08;不带WIFI&#xff09;就可以组成网络打印机&#xff0c;能省1000块不&#xff1f; 1. 让笔记本安装驱动使其可以打印。 2. 让笔记本上的打印机共享&#xff0c;…

解决 MacOS Sonoma 14 系统下修改用户名无法进入系统的历史Bug

苹果系统祖传Bug概述 在MacOS中如果在系统偏好设置/用户和群组中尝试修改用户名或用户ID&#xff0c;当且仅当只有一个管理员账号的时候重启&#xff0c;就可能面临到无法进入操作系统&#xff0c;即使出现了登录框&#xff0c;但是一直是 loading状态在这个期间&#xff0c;你…

javaScript 深浅拷贝

javaScript深浅拷贝 浅拷贝 自己创建一个新的对象&#xff0c;来接受你要重新复制或引用的对象值。如果对象属性是基本的数据类型&#xff0c;复制的就是基本类型的值给新对象&#xff0c;但如果属性是引用数据类型&#xff0c;复制的就是内存中的地址&#xff0c;如果其中一个…

Python 编程中的迭代器、生成器和装饰器探究【第110篇—迭代器】

Python 编程中的迭代器、生成器和装饰器探究 在Python编程中&#xff0c;迭代器&#xff08;Iterators&#xff09;、生成器&#xff08;Generators&#xff09;和装饰器&#xff08;Decorators&#xff09;是三个强大的概念&#xff0c;它们为代码的可读性、效率和灵活性提供…

PaddleOCR的部署教程(实操环境安装、数据集制作、实际应用案例)

文章目录 前言 PaddleOCR简介 一、PaddleOCR环境搭建 因为我之前安装过cuda和cudnn&#xff0c;查看cuda的版本根据你版本安装合适的paddlepaddle版本&#xff08;之前没有安装过cuda的可以看我这篇文章Ubuntu20.04配置深度学习环境yolov5最简流程&#xff09; 1.创建一个…

【C++从0到王者】第四十八站:最短路径

文章目录 一、最短路径二、单源最短路径 -- Dijkstra算法1.单源最短路径问题2.算法思想3.代码实现4.负权值带来的问题 三、单源最短路径 -- Bellman-Ford算法1.算法思想2.算法实现3.SPFA优化4.负权回路 四、多源最短路径 -- Floyd-Warshall算法1.算法思想2.算法实现 一、最短路…

antd vue 日期控件的使用(选年份)

Ant Design Vue-------DatePicker 今天就讲讲Ant Design Vue下的控件----DatePicker 日期选择框 结合项目中的需求&#xff0c;先讲一下选择年份如何使用&#xff0c;需求&#xff1a; &#xff08;1&#xff09;将库中存的年份读出到DatePicker控件里面&#xff1b; &…

Windows 10上安装Docker

在Windows 10上安装Docker需要使用Docker Desktop for Windows&#xff0c;这是一个完全包含Docker工具和Docker Engine的应用程序&#xff0c;让你可以在Windows环境中运行容器化应用程序。以下是安装Docker Desktop for Windows的步骤&#xff1a; 系统要求检查&#xff1a; …

推荐收藏!字节AI Lab-NLP算法(含大模型)面经总结!

节前&#xff0c;我们组织了一场算法岗技术&面试讨论会&#xff0c;邀请了一些互联网大厂同学、参加社招和校招面试的同学&#xff0c;针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何备战、面试常考点分享等热门话题进行了深入的讨论。 今天整理…

Python调用ChatGPT API使用国内中转key 修改接口教程

大家好&#xff0c;我是淘小白~ 有的客户使用4.0的apikey ,直接使用官方直连的apikey消费很高&#xff0c;有一位客户一个月要消费2万&#xff0c;想使用4.0中转的apikey&#xff0c;使用中转的apikey 需要修改官方的openai库&#xff0c;下面具体说下。 1、首先确保安装的op…

Java ElasticSearch-Linux面试题

Java ElasticSearch-Linux面试题 前言1、守护线程的作用&#xff1f;2、链路追踪Skywalking用过吗&#xff1f;3、你对G1收集器了解吗&#xff1f;4、你们项目用的什么垃圾收集器&#xff1f;5、内存溢出和内存泄露的区别&#xff1f;6、什么是Spring Cloud Bus&#xff1f;7、…

安装ProxySQL,教程及安装链接(网盘自提)

一、网盘下载&#xff0c;本地直传 我网盘分享的是proxysql-2.5.5-1-centos8.x86_64.rpm&#xff0c;yum或者dnf直接安装就行 提取码&#xff1a;rhelhttps://pan.baidu.com/s/1nmx8-h8JEhrxQE3jsB7YQw 官方安装地址 官网下载地址https://repo.proxysql.com/ProxySQL/ 二、…