Java学习笔记23——while循环语句


while循环 语句格式: 简化格式: while(关系表达式){ 循环体语句; }   完整格式: 初始化语句; while(关系表达式){ 循环体语句; 控制条件语句; }   执行流程: 1、先执行初始化语句 2、判断关系表达式的结果, 如果是true,进入while循环,执行循环体内容 如果是false,就不进入while循环,不执行循环体内容 3、如果进入循环体内容,执行循环体代码和控制条件语句 4、直到关系表达式结果为false,终止while循环   死循环介绍: for(;;){}   while(true){} 永远满足条件,永远出不去,永远跳不出来 用for循环实现:

 

用while循环实现: 结论:for循环可以等价转换为while循环   while循环与for循环的区别: 1、for循环结束后,在for循环中定义的初始化变量在外部无法使用 while循环结束后,由于初始化值变量是在while循环外部定义的,所以在while循环外部可以访问到   举例1、打印1-10 运行完for循环之后想把i打出来看看,如下图: 结果报错,这是因为i的作用域只在for循环内有效,出了for循环就没有效了 再来看,运行完while循环后想把i1打出来看看值是多少

结果i1的值是11

举例2、假设学习Java,每天学一点,你不知道多少天学完,但是总有一天会学完 这时候就不能用for循环了,我们改用while循环 for循环实现的是一个范围内的循环 while循环,不知道将来要循环多少次,但是总会有一个点去停止       举例3、每分钟监控某网页登录用户的情况,知道有非法用户登录,统计在此之前的次数   boolean flag=true; while(flag){ if(非法用户登录){ flag=false; } }     分析: 1、高度:8848 2、一张纸的厚度是0.01,也就是初始值为0.01 3、每叠一次相当于厚度*2 4、叠多少次呢?我们不知道,但是我们知道厚度>=8848,不能继续叠了 5、由于我们不知道叠了多少次,优先考虑while循环 while循环: for循环也可以: