华杉研发九学习日记4
java循环结构
1.do-while循环
格式:
初始化表达式;
do{
循环体语句;
迭代语句;
}while(条件表达式);
执行流程:
1.执行初始化表达式
2.进入do,执行其循环体语句
3.执行迭代语句
4.执行while的条件判断
5.如果while的条件判断为true,则重复性执行234 5…直到5的结果为false终止循环
注意:
1.do-while循环是先执行循环体,再判断条件
2.for循环和while循环都是先判断条件,然后再执行其循环体语句
3.do-while比while循环和for循环而言,至少执行—次循环体。
2.1无限循环
无限循环,也被称为死循环,就是在程序中实现永久的执行下去,而不终止的程序。在程序中建议不要出现死循环,一旦出现死循环,整个程序无终止的条件。
出现的情况:一旦出现死循环,一般我们都要解决。
废代码:
public static void main(String[] args) {
while(true){
System.out.println("喵喵喵喵!!");
}
System.out.println("嘻嘻嘻"); //死代码,废代码 在Java中不支持废代码的存在
}
2.2 无限循环的使用
合理的使用无限循环在java程序中使用可以完成很多种的特殊案例。
合理的使用条件:
当程序对循环的次数不确定时,可以采用无限循环来实现。
终止循环的方式:
break语句
int n=0;
double i=0.1;
while(true){
if(i*pow(2,n)>=8844430)break;
n++;
}
System.out.println(n+"次");
3.1 break和continue 关键字
普通用法
break;终止的意思,在switch和循环中使用,用来终止整个语句和循环语句。
continue;继续的意思,只在循环中使用,用来终止循环中的本次循环进入下个循环。
区别
1.break可以在循环中和swatch中使用
2.一旦遇到break,则终止整个循环
3.continue只能在循环中使用
4.一旦遇到continue,则终止的是当前的本次循环
例如:
int i=1;
final int MAX=10;
while(true){
if(i==5) {
i++;
continue;
}
else System.out.println(i);
if(i==MAX-1)break;
i++;
}
3.2 带有标志的用法
在指定需要终止的循环的外部加入一个标志,然后在多层的循环中使用break和continue来终止外层的循环。
break:终止的是带有标志的循环的整个循环
continue:终止的是带有标志的循环的本次循环,进入带有标志的循环的下个循环。
步骤:
1.在循环上方加入标志
2.在循环中使用break和continue来终止外层循环
3.格式:break 标志名;continue 标志名;
a: //标志 该标志必须紧挨着for
for (int i = 0; i < 10; i++)
for(int j = 0; j < 10; j++){
if(j==5) break a;
//continue a;
System.out.println(i+"\t"+j);
}
例:打印1–100之间的质数(一个大于1的自然数,除了1和它本身以外不再有其他因数的数)
//打印1-100之间的质数
a: //对外层循环进行标记
for(int i=2;i<=100;i++) {
//内层循环,判断从2---根号i之间有无倍数关系
for (int j = 2; j * j <= i; j++)
if (i % j == 0) continue a; //能被整除则i不为质数,直接进行下一个外层循环
System.out.println(i);
}