循环结构:
for循环语句:
- 初始化语句:完成初始化操作
- 判断条件语句:boolean表达式,决定是否执行循环体
- 循环体语句:要做的操作
- 控制条件语句 :一次循环结束后,下一次循环判断条件执行前执行,控制循环条件的变量,使得循环在合适的时候结束。
/*
for循环语句:
格式:
for(初始化语句;判断条件语句;控制条件语句){
循环语句体;
}
执行流程:
1.执行初始化语句
2.执行判断条件语句,看其结果是true还是false
如果是true,继续执行
如果是false,循环结束
3.执行循环体语句
4.执行控制条件语句
5.回到B继续
注意事项:
1.判断条件语句结果是布尔类型
2.循环体语句如果是一句,大括号可以省略,如果是多句,则不可以省略,建议不省略
3.一般来说,有左大括号就没有分号,有分号就没有左大括号
*/
class Demo4{
public static void main(String[] args){
for(int x=1;x<=10;x++){
System.out.println("helloworld");
}
}
}
whle循环语句:
/*
while循环的基本格式:
while(判断条件语句){
循环体语句;
}
while循环的扩展格式:
初始化语句
while(判断条件语句){
循环体语句;
控制条件语句;
}
注意:通过这个格式,我们就可以看到其实和for循环是差不多的
*/
class WhileDemo1{
public static void main(String[] args){
int i = 1;
int sum = 0;
while(i <= 100){
sum += i;
i += 1;
}
System.out.println(sum);
}
}
while循环和for循环的区别:
- 使用区别:控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以使用,如果你想继续使用就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使用效率。
- 场景区别:
- for循环适合针对一个范围判断进行操作
- while循环适合判断次数不明确操作
do...while循环语句:
/*
do...while循环的基本格式:
do{
循环体语句;
}while(判断条件语句);
扩展格式:
初始化语句;
do{
循环体语句;
控制条件语句;
}while(判断条件语句);
*/
class DoWhileDemo1{
public static void main(String[] args){
// 输出十次helloworld
int i = 0;
do{
System.out.println("helloworld");
i++;
}while(i<10);
}
}
循环语句的区别:
- do...while循环至少执行一次循环体
- 而for,while循环必须先判断条件是否成立,然后再决定是否执行循环体语句
- 所以,优先考虑for,其次考虑while,最后考虑do...while
输出语句扩展:
- System.out.println():是自动换行的
- System.out.print():是不换行的输出
break语句:
/*
控制跳转语句:
break:中断
continue:继续
return:返回
break:中断的意思
使用场景:
A:switch语句中
B:循环语句中
(循环语句中加入了if判断的情况)
注意:离开上面两个场景,无意义
使用方法:
A:调出单层循环
B:调出多层循环:要使用带标签的语句。
格式:标签名:语句
*/
class BreakDemo{
public static void main(String[] args){
// break:跳出循环,中断当前的循环。
// 调出单层循环
for(int x=0;x<10;x++){
if(x == 2){
break;
}
System.out.println("helloworld");
}
System.out.println("-----------------");
// 调出多层循环
wc:for(int x=0;x<4;x++){
nc:for(int y=0;y<5;y++){
if (y==2){
break nc;
}
System.out.print("*");
}
System.out.println();
}
}
}
continue语句:
/*
continue:继续
使用场景:
循环中,离开此场景无意义
测试:找到和break的区别:
break:调出单层循环
continue:
*/
class ContinueDemo {
public static void main(String[] args){
for(int x=0;x<10;x++){
if(x==3){
continue;
}
System.out.println(x);
}
}
}
return语句:
/*
return:返回
其实它的作用不是结束循环的,而是结束方法的。
*/
class ReturnDemo{
public static void main(String[] args){
for(int x=0;x<10;x++){
if(x == 3){
System.out.println("退出");
return;
}
System.out.println(x);
}
System.out.println("over");
}
}
输出结果:
0
1
2
退出
return:结束了整个方法。