目录
3.do……while循环语句
3.1do……while循环语句格式
基本格式:
do {
循环体语句;
} while(条件判断语句);
完全格式:
初始化语句;
do {
循环体语句;
条件控制语句;
}while(条件判断语句);
执行流程:
①执行初始化语句
②执行循环体语句
③执行条件控制语句
④之间条件判断语句,看其结果是true还是false
如果是false,循环结束
如果是true,循环继续执行
⑤回到②继续
执行流程图:
代码演示:
/*
do……while循环语句格式
基本格式:
do {
循环体语句;
} while(条件判断语句);
完全格式:
初始化语句;
do {
循环体语句;
条件控制语句;
}while(条件判断语句);
执行流程:
① 执行初始化语句
② 执行循环体语句
③ 执行条件控制语句
④ 之间条件判断语句,看其结果是true还是false
如果是false,循环结束
如果是true,循环继续执行
⑤ 回到②继续
*/
public class Do_While {
public static void main(String[] args) {
//需求:使用do…while循环语句在控制台输出5次HelloWorld
//初始化语句
int i = 1;
//do…while循环语句
do{//这里没有做判断直接输出一次,这就是for语句和while语句跟do…while语句的区别
//循环体语句
System.out.println("HelloWorld");
//条件控制语句
i++;
//条件判断语句
}while (i<=5);
}
}
3.2三种循环的区别
(学完之后要求大家知道三种循环的小区别)
三种循环体的第一个区别:
/*
三种循环的区别
*/
public class For_while_Dowhile {
public static void main(String[] args) {
//for循环
int i = 5;
for(i = 5; i < 5; i++) {
System.out.println("我爱java");
}
System.out.println("---------");
//while循环
int j = 5;
while(j < 5) {
System.out.println("我爱java");
j++;
}
System.out.println("---------");
//do…while循环
int k = 5;
do {
System.out.println("我爱java");
k++;
}while (k <5);//只有do…while会第一次不经过判断直接输出一次循环体
}
}
三种循环第二个区别:
/*
for循环和while循环的区别
*/
public class For_while_Dowhile1 {
public static void main(String[] args) {
//for循环
for (int i = 1; i < 3;i++) {//i++ ==3就停止执行
System.out.println("我爱java");//所以只执行两次
}
//只看输出次数一样但是看结果
//我们把他先注释掉System.out.println(i);//1.这里会报错,找不到符号i
System.out.println("--------");
//while循环
/*
为什么上面i报错下面j不报错呢?
因为上面的i是属于for循环结构里面的
而下面的j,并不在while循环结构里面
所以我们说这个j在while循环之后他还可以继续使用,
而这个i在for循环之后是不可以使用的
*/
int j = 1;
while (j < 3) {
System.out.println("我爱java");//同理
j++;
}
//同样看结果,所以i的结果是有问题的,j这里结果是没问题的
System.out.println(j);
}
}
do…while跟while同理,循环之后它的值还可以继续使用
死循环:
/*
死循环
*/
public class DieCycle_For_while_do_while {
public static void main(String[] args) {
//for死循环
//表示结果一直为真,就一直在控制台循环输出for
/*
先做判断,后执行循环体
for (;;) {
System.out.println("for");
}
*/
//while死循环
/*
先做判断,后执行循环体
代表结果已知为true,也就是真
一直在控制台循环输出for
while(true) {
System.out.println("while");
}
*/
/*
do…while是先执行循环体,后做判断
do…while死循环
*/
do {
System.out.println("do…while");
} while (true);
}
}
3.3总结三种循环的区别
三种循环的区别:
for循环和while循环先判断条件是否成立,然后决定是否执行循环体(先判断后执行)
do…while循环先执行一次循环体,然后判断条件是否成立,是否继续执行循环体(先执行后判断)
for和while的区别:
条件控制语句所控制的自增变量,因为归属for循环的语法结构中,在for循环结束后,就不能再次被访问了
条件控制语句所控制的自增变量,对于while循环来说不归属其语法结构中,在while循环结束后,该变量还可以继续使用
死循环格式:
for(;;) { }
while(true) { }
do{ }while(true);
while的死循环格式是最常用的。