循环结构
循环语句可以在满足循环条件的情况下,反复执行某一段代码,这段被重复执行的代码被称为循环体语句,当反复执行这个循环体时,需要在合适的时候把循环判断条件修改为false,从而结束循环,否则循环将一直执行下去,形成死循环。
分类:for语句,while语句,do……while语句
for
结构:for(初始化表达式语句;判断条件语句;控制条件语句) {
循环体语句;
}
执行流程:
- a:执行初始化表达式语句
- b:执行判断条件语句,看其返回值是true还是false
- 如果是true,就继续执行
- 如果是false,就结束循环
- c:执行循环体语句;
- d:执行控制条件语句
- e:回到b继续。
注意初始化表达式语句只执行一次。
例:
public class xunhuan {
public static void main(String[] args) {
for (int i=0;i<5;i++)
System.out.print(i);
}
}
i先给赋值为1,此时i<5为真,输出i,然后i++,此时i依然为真,输出i,直到i++=5时,i<5为假,循环结束
输出为:01234
while
格式: 初始化条件语句;
while(判断条件语句) {
循环体语句;
控制条件语句;
}
执行流程:
- a:执行初始化条件语句;
- b:执行判断条件语句,看其返回值是true还是false
- 如果是true,就继续执行
- 如果是false,就结束循环
- c:执行循环体语句;
- d:执行控制条件语句
- e:回到b继续。
例:
public static void main(String[] args) {
int i = 0;
while (i < 5) {
System.out.print(i);
i++;
}
}
}
先给i赋值为0,此时i<5为真,输出i,然后i++,返回条件语句此时i依然为真,输出i,直到i++=5时,i<5为假,循环结束
输出为:01234
do……while
结构:
初始化条件语句;
do {
循环体语句;
控制条件语句;
}while(判断条件语句);
执行流程:
- a:执行初始化条件语句;
- b:执行循环体语句;
- c:执行控制条件语句;
- d:执行判断条件语句,看其返回值是true还是false
- 如果是true,就继续执行
- 如果是false,就结束循环
- e:回到b继续。
例:
public static void main(String[] args) {
int i=0;
do{
i++;
System.out.println(i);
}while (i<5);
}
先给i赋值为0,i++;i变为1;此时i<5为true,i++……直到i++=5;输出5,结束循环
输出为:1
2
3
4
三种循环语句的区别:
(1):do...while循环至少执行一次循环体。
而for,while循环必须先判断条件是否成立,然后决定是否执行循环体语句。
(2)如果你想在循环结束后,继续使用控制条件的那个变量,用while循环,否则用for循环。不知道用for循环。
因为变量及早的从内存中消失,可以提高内存的使用效率。
建议优先考虑for循环,然后是while循环 ,最后是do...while循环