流程控制语句之循环语句
一、for循环
- 对于重复的代码,我们应该考虑使用循环来做;
- int i=0;循环的初始值;
- i<10;循环条件,如果i<10为true,循环继续;如果i<10为false循环终止
- (System.out.println(“Hello World”))循环体,就是你要重复执行的代码,当然循环条件要为true
- i++控制循环的语句,每循环一次i增加1
- 先执行1.;在执行2; 看i<10是否为真,如果为真 执行第三步循环体;再执行第四步i++
- 然后回到第二步,继续判断循环体,直到循环条件为假循环结束
- 2. 4.
for(int=10;i>=1;i–){
3.
执行循环体:System.out.println(i);
}
如果循环体里面的代码,只有一条,{}可以省略不写,个人推荐{}
for(int i=0;i<10;i++)
//3 执行循环体
System.out.println(“Hello World!”);
- 练习1:求出100之内的偶数;
int sum=0;
//第一种
for(int i=0;i<=100;i+=2){
sum=sum+i;}
System.out.println(sum);
//第二种
for(int i=0;i<=100;i++){
if(i%2==0){
sum=sum+i;}}
System.out.println(sum);
- 练习2:求出100之内的质数;
int sum=0;
//第一种
for(int i=1;i<=100;i+=2){
sum=sum+i;}
System.out.println(sum);
//第二种
for(int i=0;i<=100;i++){
if(i%2==1){
sum=sum+i;}}
System.out.println(sum);
二、While循环
-
循环结构while语句的格式:
-
while循环的基本格式:
while(判断条件语句) {
循环体语句;
} -
完整格式:
初始化条件语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
} -
执行流程:
- 执行初始化条件语句;
- 执行判断条件语句,看其返回值是true还是false
如果是true,就继续执行
如果是false,就结束循环 - 执行循环体语句;
- 执行控制条件语句
回到判断语句继续。
int i=1;//循环初始值 while(i<=10){//循环条件 System.out.println("Hello World!"); i++;//控制语句,不要忘了; } //************************************** //输出10-1; int j=10; while(j>=1){//循环的条件 System.out.println(j); j--;//控制语句 } /* //如果,循环体l里面的代码,只有一条,{}可以省略不写,建议去写{} */
-
练习:水仙花数
for(int i=100;i<1000;i++){
int ge=i%10;//取个位
int shi=i/10%10;//取十位
int bai=i/100%10;//取百位
if(i==(ge*ge*ge+shi*shi*shi+bai*bai*bai)){
System.out.println(i);
count++;
}
三、do while
-
do while 特点:先执行一次do里面的代码,在判断,循环条件是否成立,如果成立继续循环,不成立结束循环
-
循环结构do…while语句的格式:
do {
循环体语句;
}while(判断条件语句); -
完整格式;
初始化条件语句;
do {
循环体语句;
控制条件语句;
}while(判断条件语句);- -
执行流程:
- 执行初始化条件语句;
- 执行循环体语句;
- 执行控制条件语句;
- 执行判断条件语句,看其返回值是true还是false
如果是true,就继续执行
如果是false,就结束循环 - 回到继续。
int i=100;
do{
System.out.println("Hello World!");
i++;
}while(i<10);
- 如果说知道循环次数,一般选用for
- 如果不知道循环次数(但知道循环结束的条件)一般用while
四、三种循环语句的区别
-
三种循环语句的区别:
do…while循环至少执行一次循环体。
而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用for循环。
因为变量及早的从内存中消失,可以提高内存的使用效率。
建议优先考虑for循环,然后是while循环 ,最后是do…while循环
五、控制跳转语句
- **break:**终止循环,用于循环场景中,脱离循环场景没有意义。
- **continue:**用于循环场景中,离开循环场景没意义,跳出一次循环继续下一次循环
break
for(int i=1;i<=10;i++){
System.out.println(i);
if(i==5){
break;
while(true){
if(满足条件){
break; //终止死循环,
}
continue
for(int i=1;i<=10;i++){
if(i==5){
continue;
}
System.out.println(i);
}
- 练习:输出10以内的偶数
for(int i=1;i<=10;i++){
if(i%2==1){
continue; //用在循环场景中,离开循环场景没意义,跳出一次循环继续下一次循环。
}
System.out.println(i);
}
- 练习:
1.我想在控制台输出2次:“Java基础班“
2.我想在控制台输出7次:“Java基础班“
3.我想在控制台输出13次:“Java基础班“
for(int x=1; x<=10; x++) {
if(x%3==0) {
//在此处填写代码
//break;//1.
//continue;//2.
//System.out.println("Java基础班"); //3.
}
System.out.println("Java基础班");
}