1、循环结构
Java中有三种循环结构,分别为while循环,do...while循环,for循环。
其中while循环是最基本的循环,其结构为:
while(布尔表达式){
//循环内容
}
- 只要布尔表达式为true循环就会一直执行;
- 大多数情况下我们会需要一个方式让表达式失效来让循环停止;
- 少部分情况才会让循环一直执行,比如服务器的请求响应监听等;
- 循环条件一直是true就会陷入死循环,正常的代码编写中应当尽量避免死循环。死循环会影响程序性能甚至卡死崩溃。
下面是while循环的一个执行代码:
public class WhileDemo01 {
public static void main(String[] args) {
//输出1~100
int i = 0;
while(i<100){
i++;
System.out.println(i);
}
}
}
while循环如果不满足布尔表达式条件则不会进入循环,有些情况我们需要代码至少执行一次,do...while就满足了这个需求,起结构为:
do{
//代码语句
}while(布尔表达式);
两者的区别是while是先判断后执行,dowhile是先执行后判断,所以会至少执行一次循环体。
下面是dowhile循环的一个执行代码:
public class DoWhileDemo01 {
public static void main(String[] args) {
int i = 0;
int sum = 0;
do{
sum = sum + i;
i++;
}while(i<=100);
System.out.println(sum);
}
}
for循环可以使一些循环结构更为简单,是一种最有效最灵活的循环结构。
for循环的执行次数在执行前就确定了。其语法结构为:
for (初始化;布尔表达式;更新){
//代码语句
}
下面是for循环的一个执行代码:
public class ForDemo01 {
public static void main(String[] args) {
int a = 1; //初始化条件
while (a<=100){ //条件判断
System.out.println(a); //循环体
a+=2; //迭代 a=a+2
}
System.out.println("while循环结束!");
//初始化//条件判断//迭代
for(int i=1;i<=100;i++){
System.out.println(i);
}
//输入100.for也可以生出一个for循环
System.out.println("for循环结束!");
//死循环
for( ; ; ) {
}
}
}
关于for循环有以下几点说明:
- 最先执行初始化步骤。可以声明一种类型,但可初始化一个或多个循环控制变量,也可以是空语句。
- 然后检测布尔表达式的值。如果为true,循环体被执行,如果为false,循环终止。开始执行循环体后面的语句
- 执行一次循环后,更新循环控制变量(迭代因子控制循环变量的增减)
- 再次检测布尔表达式。循环执行上面的过程。
2、continue和break
- break在任何循环语句的主体部分。均可用break控制循环的流程。
- break用于强制退出循环,不执行剩下的语句
- continue用于在循环语句体中,用于终止某次循环,即跳过循环体中尚未执行的语句,接着进行下一次是否循环的判定
简单的来说就是break直接终止整个循环,而continue进中断本次循环,对于下一次循环没有影响。