【25节JavaSE知识点·6】Java循环结构详解
循环结构
1.引言:循环就是通过某个条件重复并且有规律的执行一段代码。
2.循环的组成 (1)循环变量的初始值:循环起始。 (2)循环条件:程序周而复始执行的条件。 (3)循环变量的改变(递增、递减):通过改变循环变量,控制循环条件。 (4)循环体:周而复始执行的代码。 3.分类 1.while循环 2.do…while循环 3.for循环
while循环
语法
//1.循环变量初始化 while(循环条件){ //2.循环条件 //3.循环体 //4.循环变量的改变 }
执行原理
首先做循环变量的初始化,完成后,先判断循环条件是否成立,成立后,true,则进入循环体,执行代码,代码执行结束后,对循环变量进行修改;再次判断循环条件是否成立,成立true,继续执行循环,循环变量改变,直到再次判断循环条件结果为false,则循环结束。
注意
1.先判断,再执行。执行0~n次
循环变量初始值设置的不合理或者循环条件不合理,可能导致循环一次都不执行。
2.如果循环条件不合理或者循环变量变化的不合理,可能会引发死循环,直到jvm虚拟机异常。
例如将循环条件设置为true,或不对循环变量修改。
do…while循环
语法
do{ 循环体语句 }while(循环条件); 注意:行尾的分号;不要忘记!!!
执行过程
先执行循环体语句,再执行循环条件,为true则再执行循环体,执行条件为false则结束循环。 【也就是说,无论执行条件是否符合,都会先执行一次!】
特点:先执行,后判断。
while和do-while的区别比较:
public class TestDoWhile{ public static void main(String[] args){ int i = 1; while(i <= 5){ System.out.println(i); i ++; } System.out.println("----------------"); int j = 1; do{ System.out.println(j); j ++; }while(j <= 0); //j = 1并不满足循环条件,但依旧会输出一次 System.out.println("----------------"); int k = 1; while(k <= 0){ //k = 1不满足条件,所以直接不进入循环 System.out.println(k); k ++; } System.out.println("----------------"); } }
执行次数
1—n次
适用场景
常用于循环次数不确定的情况(如dos界面提示菜单显示)
for循环【开发重点】
语法:
for(初值; 循环条件; 递增迭代部分){ //循环体语句 }
执行过程:
先执行初值部分,然后执行判断条件为真则执行循环体,递增,判断为真,则继续执行循环体,递增,直到不满足循环条件则跳出循环。
案例:
用for循环输出十次Hello
public class TestFor1{ public static void main(String[] args){ //输出10次hello for(int i = 1; i <= 10; i ++){ System.out.println("Hello..." + i); } System.out.println("end..."); } }
循环控制语句
break:用在switch中用于退出分支结构,用于循环中用于跳出整个循环。 **continue:**用在循环中用于跳出本次循环,继续后面次数的循环。
循环嵌套
1.外层循环一次,内层循环多次
循环嵌套中循环体的执行次数 = 外层次数 * 内层次数
2.外层控制行,内层控制列
经典输出三角例题
//外层循环1次,内层循环n次 for(int i = 1; i <= 3; i ++){ //i = 1 t for(int j = 1; j <= 2; j ++){//j = 1 t j = 2 t j = 3 f //i = 1 j = 1 //i = 1 j = 2 System.out.println("i=" + i + "j=" + j); } }