书接上回《switch选择结构》,在Java中的两种选择结构if
和switch
已经结束,现在开启新的流程控制--循环流程。循环流程是流程控制中的重要流程结构之一,它可以使一段程序重复的执行,直到满足条件时停止。Java中的循环总共有三种:while
、do while
、for
。Java5之后又增加了foreach
循环,但它只是for
循环的变体而已。
各位少侠,现在开始while
循环和do while
循环。
while
while
循环先判断执行条件再决定是否执行,每次重复都要检查执行条件是否为true
。while
语法结构
while(执行条件){
语句;
}
执行条件的结果必须是boolean
类型的值。
例如计算1-10的和
public static void main(String[] args) {
int a = 1;
int sum = 0;
while( a <= 10){
sum += a;
a = a + 1;
}
System.out.println(sum);
}
输出结果
55
do while
do while
循环先执行语句在判断执行条件,如果执行条件为true
则重复执行代码,否则停止循环。do while
语法结构
do{
}while(执行条件);
同样用do while
计算一下1-10的和。
public static void main(String[] args) {
int a = 1;
int sum = 0;
do {
sum += a;
a = a + 1;
}while (a <= 10);
System.out.println(sum);
}
运行结果
55
对比
通过一个例子将while
和do while
的执行条件设置成一样,来对比一下while
和do while
的区别
public static void main(String[] args) {
int a = 1;
int sum = 0;
while (a > 2){
sum += a;
a = a + 1;
}
System.out.println(sum);
//将a 和 sum 重新初始化成 1 ,0
a = 1;
sum = 0;
do {
sum += a;
a = a + 1;
}while (a > 2);
System.out.println(sum);
}
看一下执行结果
0
1
while
循环判断a>2
的结果是false
所以没有执行while
中的循环语句,sum
的值还是原来的0。do while
循环首先要执行一次循环语句,然后再判断a > 2
结果也是false
然后停止循环,sum
的值变为1.
注意:执行条件
要时刻注意如果永远是true
,就会造成死循环永远也跳不出来。