详解Java中while和do-while循环、break的使用
作者:Java进阶者 发布时间:2022-10-24 13:37:04
循环结构分两大类,一类是当型,一类是直到型。
当型:
当布尔值表达式条件为True时,反复执行某语句,当布尔表达式的值为False时才停止循环,例如:while 与 for循环。
直到型:
先执行某语句,在判断布尔表达式,如果为true,再执行某语句,如此反复,直到布尔表达式条件为false时才停止循环,例如do - while循环。
语法结构:
while (布尔表达式)
{
循环体;
}
一、循环结构语句
1.在我们实际生活中经常会把同一件事情重复做好几次。例如:潮汕人喜欢喝茶,只要在喝茶的过程,冲泡的行为;做俯卧撑的起伏的动作等。在java中有一种特殊的语句叫做循环语句,它可以实现将一段代码重复执行。例如求1~10的整数和。
2.循环语句分为while循环语句、do-while循环语句、for循环语句三种。
二、while循环语句
1.while循环语句是根据条件判断来决定是否执行大括号({})的执行语句。while语句会反复地进行条件判断,只要条件成立,大括号({})的语句就会被执行,直到条件不成立,while循环结束。
2.while循环语句的语法语句
[初始化语句]
while( 条件 ){
s1:执行语句
}
在语法结构中{}中的执行语句称为循环体,循环体是否被执行就看条件满不满足。
3.while循环的流程图
当条件为true时,循环体就会执行,循环体执行完之后会继续判断条件,是否循环条件为true,如果为true继续执行循环体,直到循环条件为false,while循环就结束。
4.使用while循环语句求1-10整数的和
int i = 1, sum = 0;
while(i <= 10){
sum += i;
i++;
}
System.out.println("1-10的整数和值为" + sum);
System.out.println("1-10的整数和值为" + sum);
输出的结果是:
1-10的整数和值为55
首先是定义int类型变量i和sum,i=1,sum=0是用来保存计算1-10整数和的结果。从i等于1,只要i小于等于10,就会执行循环体的语句,sum+=i相当于sum=sum+i,i的值自增,直到不满足条件,while循环结束输出1-10整数的和的结果。
三、do-while循环语句
1.do-while循环语句和while循环类似,语法语句
do{
s1:执行语句
} while( 条件 );
在上面这个语法语句中,do后面大括号({})执行语句是循环体,do-while循环的条件放在循环体的后面。这说明先执行循环体,再判断条件,条件满足继续执行循环体,否则退出循环,执行do-while循环后面的语句。因此,在do-while循环中,循环体被执行的次数是1或若干次。
2.do-while循环语句流程图
3.使用do-while循环求1~10的整数和
int i = 1, sum = 0;
do{
sum += i;
i++;
}while(i <= 10);
System.out.println("1-10的整数和值为" + sum);
输出的结果是:
1-10的整数和值为55
首先定义了int类型变量i和sum,i=1,sum是用来保存1-10的整数和的值,先执行循环体,sum+=i相当sum=sum+i的值,sum的值为1,i自增,然后看i<=10的条件是否满足,如果满足就继续执行,不满足就退出这个do-while循环,输出1-10的正数和值为55。
四、break使用
1.在循环语句中,使用break语句可以直接跳出循环,忽略循环体的任何其他语句和循环条件测试。换句话说,循环中遇到break语句时,循环终止,程序转到循环后面的语句处继续执行。
2.break使用例子如下所示:
int i=0;
while(i<10){
i++;
if(i==5){
break;
}
System.out.print(i);
}
输出的结果是:1234
可以看到定义int类型变量i为0,因为i=0,i<10所以满足条件执行循环体,然后i自增,此时i=1,1<10满足条件,继续执行循环体,i=2,2<10满足条件,再继续执行到i=5退出while循环。
五、总结
本文介绍了循环结构语句while和do-while循环、break的使用,while循环语句通过流程图和语法语句结合一个求1~10的整数和的例子来帮助大家理解while循环的用法。do-while循环和while循环类似,do-while是先执行循环体,再判断条件,条件满足继续执行循环体,否则退出循环,执行do-while循环后面的语句。简单介绍break的使用,break是跳出这个循环体。
来源:https://developer.51cto.com/art/202011/631737.htm


猜你喜欢
- 从源代码树下载下来的最新Android源代码,是不包括内核代码的,也就是Android源代码工程默认不包含Linux Kernel代码,而是
- Gradle和Maven都是当前热门的自动化构建工具。使用Gradle去构建项目,由于没有办法像Maven一样配置Setting文件来修改本
- Mybatis属于半自动ORM,在使用这个框架中,工作量最大的就是书写Mapping的映射文件,由于手动书写很容易出错,我们可以利用Myba
- 在 C语言中,占位符是一种用于格式化输出的特殊字符,通常用于 printf() 等输出函数中,用于指定输出的格式和内容。在本文中,我们将详细
- 我们日常的工作中都使用开发工具(IntelliJ IDEA 或 Eclipse 等)可以很方便的调试程序,或者是通过打包工具把项目打包成 j
- 人每天都要喝8杯水才能保持健康,于是苦逼的程序员总是一遍代码就忘了时间,于是我突发奇想能不能开发一个apk能够实现固定的间隔时间定时提醒我要
- 为哪些方法代理?实现自己 * ,首先需要关注的点就是,代理对象需要为哪些方法代理? 原生JDK的 * 的实现是往上抽象出一层接口,让目标
- 1、mybatis-plus @DS实现动态切换数据源原理首先mybatis-plus使用com.baomidou.dynamic.data
- 1.上原图 前几天在 Hencoder 征稿看到的Filpboard 里的的动画效果:Filipboard.gif先bb一句:在看本文的同时
- 一、什么叫做匿名类?匿名类就是没有名字的类。匿名类不能被引用,只能再创建的时候用new语句来声明。二、匿名类的优势以及应用场景;1、匿名类型
- Hadoop环境搭建详见此文章https://www.jb51.net/article/33649.htm。我们已经知道Hadoop能够通过
- 在spring中有很多以XXXAware命名的接口,很多人也不清楚这些接口都是做什么用的,这篇文章将描述常用的一些接口。一,Applicat
- 本文主要包括以下几个方面:编码基本知识,java,系统软件,url,工具软件等。 在下面的描述中,将以&
- 使用springboot创建多module项目,以前也做过多次,一段时间不用又忘了,在这里做个记录项目名称作用说明demo-root根项目父
- Flutter有个悠久的传统,便是运行flutter create并删除所有内容,然后在所有标准样板文件(boilerplate)当中尽力复
- 文件上传在Web应用中非常普遍,要在Java Web环境中实现文件上传功能非常容易,因为网上已经有许多用Java开发的组件用于文件上传,本文
- 一、概念哈希算法(hash algorithm):是一种将任意内容的输入转换成相同长度输出的加密方式,其输出被称为哈希值。哈希表(hash
- 前言记录下SpringBoot修改yml配置文件后无需重启服务的方式(打包后生效),效果如下:具体实现实现代码pom.xml<depe
- public static string DateDiff(DateTime DateTime1, DateTime DateT
- 1. 在原有工程目录右键-> new ->Module->:2. 选择library:3. 一路next,最后finish