7、Java 循环结构
本章讲解一下Java中常见的三种循环结构,顺序结构的程序语句只能 被执行一次。使用循环可以解决我们多个常量或者变量的同一类的操作或者更加复杂的操作.
循环
循环结构有三大类:
1、for循环:确定循环次数。先判断,再循环。常用嵌套。
语法:
for(参数初始化 ;循环的条件 ;循环变量的叠加 ){ 循环操作; }
实例:
package com.example.xunhuan; /**
* @author lin
* @version 1.0
* @date 2020/6/23 23:39
* @Description TODO
*/
public class TestMain {
static TestMain vo = new TestMain();
public static void main(String[] args) {
vo.test();
}
public void test() {
int a[] = {1, 2, 3, 4, 5, 6, 7};
for (int i = 0; i < a.length; i++) {
System.out.println("a[i] = " + a[i]);
}
}
}
运行结果:
a[i] = 1
a[i] = 2
a[i] = 3
a[i] = 4
a[i] = 5
a[i] = 6
a[i] = 7
2、while循环:不知道循环次数。先判断,再循环。常用死循环。用死循环时就要判断什么时候手动让他停止,而这个时候就常会定义一个Boolean类型的变量,让他初始值为true,到循环该结束时,让他的值为false。
语法:
while(循环条件){ 循环操作; }
实例:
package com.example.xunhuan; /**
* @author lin
* @version 1.0
* @date 2020/6/23 23:39
* @Description TODO
*/
public class TestMain2 { static TestMain2 vo = new TestMain2(); public static void main(String[] args) {
vo.test();
} public void test() {
int a = 0;
while (a < 10) {
System.out.println("a = " + a);
a++;
}
} }
结果:
a = 0
a = 1
a = 2
a = 3
a = 4
a = 5
a = 6
a = 7
a = 8
a = 9
3、do-while循环:不确定循环次数,但至少要循环一次。先循环,在判断。最后的分号不可省。
语法:
do{ 循环操作 } while(循环条件);
实例:
package com.example.xunhuan; /**
* @author lin
* @version 1.0
* @date 2020/6/23 23:39
* @Description TODO
*/
public class TestMain3 { static TestMain3 vo = new TestMain3(); public static void main(String[] args) {
vo.test();
} public void test() {
int a = 0;
do {
a++;
System.out.println("a = " + a);
} while (a < 10); } }
结果:
a = 1
a = 2
a = 3
a = 4
a = 5
a = 6
a = 7
a = 8
a = 9
a = 10
2 练习demo
for循环代码示例:
打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。
例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。
1 for(int i=100;i<1000;i++){
2 int ge=i%10; //求出个位数
3 int shi=i/10%10; //求出十位数
4 int bai=i/100; //求出百位数
5 if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){
6 System.out,println("水仙花数有:"+i);
7 }
8 }
结果:
水仙花数有:153
水仙花数有:370
水仙花数有:371
水仙花数有:407
在循环中常会用到的还有三种跳出循环的语句:
break:结束本次循环,继续执行循环后面的语句。跳到外层循环。
continue:跳过本次循环,剩余的语句继续,继续执行下一次。
注意:用在while循环里容易出现死循环。要将更新变量语句i++放在continue上面。
return:直接结束当前main方法,遇到return后,方法中的所有代码将不再执行。
注意:程序中要减少return的使用频率。一旦使用return,整个main方法结束。
实例:
package com.example.xunhuan; /**
* @author lin
* @version 1.0
* @date 2020/6/23 23:50
* @Description TODO
*/
public class TestMain4 { static TestMain4 vo = new TestMain4(); public static void main(String[] args) {
vo.test1();
vo.test2();
vo.test3();
} public void test1() {
int[] a = {1, 2, 3, 4, 5, 6, 7};
int num = 0;
for (int i : a) {
if (i == 5) {
return;
}
num++;
}
System.out.println("test1()方法 num = " + num);
} public void test2() {
int[] a = {1, 2, 3, 4, 5, 6, 7};
int num = 0;
for (int i : a) {
if (i == 5) {
break;
}
num++;
}
System.out.println("test2(()方法 num = " + num);
} public void test3() {
int[] a = {1, 2, 3, 4, 5, 6, 7};
int num = 0;
for (int i : a) {
if (i == 5) {
continue;
}
num++;
}
System.out.println("test3()方法 num = " + num);
} }
结果:
test2(()方法 num = 4
test3()方法 num = 6
解释:
使用return时,是直接跳出本方法. break是跳出循环,continue是跳出本次循环.
7、Java 循环结构的更多相关文章
- JAVA循环结构
JAVA循环结构:顺序结构只能执行一次,如果要执行多次需要用到循环 JAVA中的循环结构有while:do...while:for: 1.while循环:先判断布尔表达式中的值,若为true,执行循环 ...
- Java循环结构 - for, while 及 do...while
Java循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: whil ...
- Java 循环结构
Java 循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: whi ...
- Java-Runoob:Java 循环结构
ylbtech-Java-Runoob:Java 循环结构 - for, while 及 do...while 1.返回顶部 1. Java 循环结构 - for, while 及 do...whil ...
- Java 循环结构 - for, while 及 do...while
Java 循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: whi ...
- JavaSE基础(八)--Java 循环结构
Java 循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次.如果您想要同样的操作执行多次,,就需要使用循环结构. Java中有三种主要的循环结构: whi ...
- Java循环结构之while和do-while循环
循环结构知识点 本章技能目标 1理解循环的含义 2会使用while循环 3会使用do-while循环 4会使用调试解决简单的程序错误 一. 循环的含义 循环就是重复的做……(Java程序中的循环结 ...
- 四、 java循环结构
for循环结构: 格式:①初始化条件;②循环条件;③迭代条件;④循环体 for(①;②;③){ //④ } 执行过程:①-②-④-③-②-④-③-...-④-③-②,直至循环条件不满足,退出当前的循环 ...
- JAVA循环结构示例
本文章主要是帮助大家学习循环结构.学习循环时,最重要的是理清思路,那些最经典算法实际中我们并不会单拿出来用,而是会用到当时做这个算法时的思想.如果把这个思路想明白了,那么实际中用到他的时候自然而然就想 ...
随机推荐
- 数据可视化之DAX篇(六) 利用ISINSCOPE函数,轻松按层级计算占比
https://zhuanlan.zhihu.com/p/70590683 关于占比,之前有篇文章(利用ALL和ALLSELECTED灵活计算占比)详细介绍了各种情况下占比的度量值. 经星友咨询,还有 ...
- 数据可视化实例(十四):面积图 (matplotlib,pandas)
偏差 (Deviation) 面积图 (Area Chart) 通过对轴和线之间的区域进行着色,面积图不仅强调峰和谷,而且还强调高点和低点的持续时间. 高点持续时间越长,线下面积越大. https:/ ...
- Configurate vim tool
vim tool is a commom editor, for the sake of improving effeicient, it is necessary to configurate vi ...
- Android 高德地图 java.lang.UnsatisfiedlinkError Native method not found: com.autonavi.amap.mapcore.MapCore.nativeNewInstance:(Ljava/lang/String;)
在Android项目中引用高德地图,程序运行时出现上述问题,如果引用了Map3D的jar包,则需要在引入Jar文件的同时引入so文件,在高德地图的demo中,找到so文件: 然后将其复制到jniLib ...
- CodeChef Sum of distances(分治)
CodeChef Sum of distances(分治) 题目大意 有一排点,每个点 i 向 \(i + 1, i + 2, i + 3\) 分别连价值为 \(a_i,b_i,c_i\) 的有向边, ...
- OSCP Learning Notes - Buffer Overflows(3)
Finding Bad Characters 1. Find the bad charaters in the following website: https://bulbsecurity.com/ ...
- Burp Suite Target Module - 目标模块
模块目的之一:获取网站分析 1.从Proxy - HTTP history界面选中需要加入Target Scope的Host 地址,右击,选中Add to Scope. 2.打开Target - Sc ...
- 简单实用的办公软件导航网站,IT经理必备工具
最近非常忙,因为公司上线了业财一体化系统.今天分享一个非常实用的办公软件导航网站,节省了我很多百度的时间. 快氪导航,让软件服务更简单. 一.办公软件导航 站长已经按照功能进行了分类:协同办公,流程审 ...
- 2万字长文包教包会 JVM 内存结构 保姆级学习笔记
写这篇的主要原因呢,就是为了能在简历上写个"熟悉JVM底层结构",另一个原因就是能让读我文章的大家也写上这句话,真是个助人为乐的帅小伙....嗯,不单单只是面向面试学习哈,更重要的 ...
- 定长比较环状字符串-------strcat与strncpy的妙用
题目链接:https://vjudge.net/problem/UVA-1584 题解:用strcpy与strcmp定长比较字符串即可,strcat与strcmp对string不适用,所以只能改写为c ...