Java中的循环

本文详细介绍了Java编程语言中的三种主要循环结构:while、do_while和for循环的工作原理和执行流程,包括初始化条件、循环条件和终止条件。同时,提到了break和continue语句在循环控制中的作用,break用于完全结束循环,而continue则用于跳过当前循环的剩余部分,直接进入下一次循环。
摘要由CSDN通过智能技术生成

while循环

语法格式:

while(布尔表达式){

语句体;

}

先判断括号里的布尔表达式,若为true,则执行后面的语句体;

在判断括号里的布尔表达式,若为true,则执行后面的语句体

直到为false,则不执行后面的语句体;

相关代码

package com.qf.a_sanmu;
public class Demo3 {
public static void main(String[] args) {
//打印4遍的中午吃烤羊排,使用while循环
//无论任何循环  都要必须有三个条件:
//1.初始化条件
//2.循环条件
//3.终止条件
/**
 * 分析代码,主要是分析执行的流程:
 * i=0   0<4  true  执行大括号里面的代码  打印第一次的  中午吃烤羊排  i++
 * i=1   1<4 true 执行大括号里面的代码  打印第二次的  中午吃烤羊排  i++
 * i=2   2<4 true 执行大括号里面的代码  打印第三次的  中午吃烤羊排  i++
 * i=3   3<4 true执行大括号里面的代码  打印第四次的  中午吃烤羊排  i++
 * i=4  4<4 false  就不再执行大括号中的代码了!!!
 */
//1.声明一个变量
int i = 0;//初始化条件
while (i < 4) {// i <  4  终止条件   
System.out.println("中午吃烤羊排");
i++;//i++  是循环条件  自身加1
}
}
}

do_while循环

语法结构:

do{

语句体;

}while(布尔表达式)

执行流程:首先代码执行到do 然后执行do后面大括号中的语句体,再去判断while后面的布尔表达式

如果布尔表达式为false的话,就不再执行do后面的语句体了,相当于循环结束

如果布尔表达式为true,再回到do 去执行后面的语句体,执行完语句体之后,再判断while后面的布尔表达式,如果布尔表达式为true的话,就再执行do后面的语句体,然后再去判断while布尔表达式,直到为false的时候,循环结束了

相关代码

package com.qf.a_sanmu;
public class Demo8 {
public static void main(String[] args) {
//打印 3遍的 一枝红杏出墙来
/**
 * i=0  打印第一遍的一枝红杏出墙来  i++ i=1   while后面的布尔表达式  1 <3 true
 *       打印第二遍的一枝红杏出墙来 i++  i=2   while后面的布尔表达式 2< 3 true
 *     打印第三遍的一枝红杏出墙来 i++  i=3   while后面的布尔表达式3 <3 false  循环结束
 * 
 */
int i = 0;
do {
System.out.println("一枝红杏出墙来");
i++;
} while (i < 3);
//do-while循环 和while循环的不同之处?
//while 先判断 再执行     do-while 先执行再判断
}
}

for循环

语法格式

for(表达式1;布尔表达式;表达式2){

语句体;

}

表达式1: 初始化的条件

表达式2: 终止条件

表达式3: 循环条件

执行流程: 首先执行表达式1,再执行表达式2,如果布尔表达式2为true,执行大括号中语句体。然后再执行表达式3,再执行表达式2,再次判断布尔表达式2,直到为false,就不执行语句体。就意味着循环结束

相关代码

package com.qf.a_sanmu;
public class Demo10 {
public static void main(String[] args) {
//打印10以内的奇数
/**
 * i=1 1<11 执行大括号中的if语句  i%2!=0  true  执行if语句大括号中的代码 sout(1) i++
 * i=2 2<11 执行大括号中的if语句  i%2!=0 false  不再执行if语句后面的大括号中的代码了  i++
 * i=3 3<11 ...
 */
//循环和if的嵌套
for (int i = 1; i < 11; i++) {
if (i % 2 != 0)  {
System.out.println(i);
}
}
System.out.println("=======");
for (int i = 1; i < 11; i+=2) {
System.out.println(i);
}
}
}

for嵌套

语法结构:

for(表达式1;布尔表达式;表达式2){

for(表达式1;布尔表达式;表达式2){

语句体;

}

}

执行顺序:

前提是循环

一个循环里面套另外一个循环。秉承着一个特点: 从外层循环先进入到内层循环,然后 内存循环先结束

然后再回到外层循环,再进入到内层循环,内层循环结束,再会带外层循环

相关代码

package com.qf.a_sanmu;
public class Demo13 {
public static void main(String[] args) {
//System.out.println("****");
//System.out.println("****");
//System.out.println("****");
//for (int i = 0; i < 4; i++) {
//System.out.print("*");
//}
//for (int i = 0; i < 3; i++) {
****   
//System.out.println("****");
//}
/**
 * i = 0  0< 3 true  执行大括号中的内层的for循环
 * j=0  0<4 true 打印1个*  j++
 * j=1  1<4  true  打印1个*  j++
 * j=2 2<4 true    打印1个*  j++
 * j=3  3<4  true  打印1个*  j++
 * j=4  4<4 false 内层for循环结束 立马换行    i++  
 * i = 1  1<3   true  再次执行大括号中的内层的for循环
 * j=0 0< 4 true  打印1个* j++
 * j=1  1<4  true  打印1个* j++
 * j=2  2<4  true 打印1个* j++
 * j=3  3<4  true  打印1个* j++
 * j=4 4<4 false    内层循环结束  立马换行  i++
 * i=2 2<3   true  再次执行大括号中的内层的for循环
 * j=0   0< 4  打印1个* j++
 * ...
 * j=3  3<4  true  打印1个*  j++
 * j=4  4<4 false    内层循环结束  立马换行 i++
 * i=3 3<3 false  整体循环就结束了
 */
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 4; j++) {//打印的是4个*
System.out.print("*");
}
System.out.println();//换行
}
//总结:   最外层for循环 控制的是   行      最内层控制的 是 列
}
}

break和continue的区别

break:

用于switch_case 与 循环之中,结束循环

continue:

用于循环之中,结束本次循环,进入下一次循环

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值