循环结构
循环结构分两大类,一类是当型,一类是直到型。
当型:当布尔表达式条件为true时,反复执行某语句,直到布尔表达式的值为false时才停止循环。
直到型:先执行某语句, 再判断布尔表达式,如果为true,再执行某语句,如此反复,直到布尔表达式条件为false时才停止循环。
while循环
语法结构:
while (布尔表达式) {
循环体;
}
图 1while流程图
在循环刚开始时,会计算一次“布尔表达式”的值,若条件为真,执行循环体。而对于后来每一次额外的循环,都会在开始前重新计算一次。
语句中应有使循环趋向于结束的语句,否则会出现无限循环–––"死"循环。
【示例1】while结构1到100之间的累加和
public class WhileTest {
public static void main(String[] args) {
int i = 0;
int sum = 0;
while (i <= 100) { // 1+2+3+…+100=?
sum += i; //sum = sum+i;
i++;
}
System.out.println("Sum= " + sum);
}
}
示例1 运行效果图 |
do-while循环
语法结构:
do {
循环体;
} while(布尔表达式) ;
图2 do-while流程图
先执行循环体,然后判断布尔表达式,do-while循环循环体至少执行一次。
【示例2】1-100之间的累加和
public class Test {
public static void main(String[] args) {
int i = 0;
int sum = 0;
do {
sum += i; // sum = sum + i
i++;
} while (i <= 100);
System.out.println("Sum= " + sum);
}
}
示例2 运行效果图 |
【示例3】while与do-while的区别
public class Test {
public static void main(String[] args) {
int a = 0;
while(a<0){
System.out.println(a);
a++;
}
System.out.println("-----");
a=0;
do{
System.out.println(a);
a++;
} while (a<0);
}
}
示例3 运行效果图 |
for循环
语法结构:
for (初始表达式;布尔表达式;迭代因子) {
循环体;
}
图3 or循环流程图
for循环语句是支持迭代的一种通用结构,是最有效、最灵活的循环结构。for循环在第一次反复之前要进行初始化。随后,它会进行条件测试,而且在每一次反复的时候,进行某种形式的“步进”。
初始化部分设置循环变量的初值
条件判断部分为任意布尔表达式
迭代因子控制循环变量的增减
for循环在执行条件测试后,先执行程序部分,再执行步进。
















