在 Java 编程中,循环结构是一种重要的控制流程,它允许我们重复执行一段代码直到满足某个条件。for
循环和 while
循环是 Java 中最常用的两种循环结构。在本文中,我们将深入探讨这两种循环的用法和区别,帮助读者更好地理解和应用它们。
for 循环
for
循环是一种迭代循环结构,它在执行时会先初始化循环变量,然后检查循环条件,执行循环体,最后更新循环变量。其语法如下:
for (声明循环遍历; 循环条件; 迭代) {
被循环的代码块
}
其中:
- 初始化语句:在循环开始之前执行,通常用于初始化循环控制变量。
- 循环条件:在每次迭代之前检查,如果条件为 true,则执行循环体;如果条件为 false,则退出循环。
- 更新语句:在每次迭代结束后执行,通常用于更新循环控制变量的值。
示例:
这是一个求偶数的例题,在控制台依次输出数字100以内的偶数,再显示这些偶数之和。
public class test01 {
public static void main(String[] args) {
// for (int i = 0; i < 100; i++) {
// System.out.println(i+1);
// }
// for (int i = 100; i > 0; i--) {
// System.out.println(i-1);
// }
int a = 0;
for (int i = 2; i < 100; i+=2) {
a = a + i;
System.out.println(i);
}
System.out.println("总数为"+a);
}
}
while 循环
while
循环在每次迭代之前检查循环条件,如果条件为 true,则执行循环体;如果条件为 false,则退出循环。其语法如下:
声明循环变量
while (循环判断) {
被循环的代码块
迭代
}
for循环语句和while循环语句可以等价转换,循环需要的内容只是换了位置而已。
示例:
这是一个求珠穆朗玛峰折叠次数的例题,现有一张足够大的纸,厚度是1cm,需要折叠多少次能超过珠穆朗玛峰的高度(8848m)。
public class test02 {
public static void main(String[] args) {
int zf = 884800;
int zhi = 1;
int i = 0;
while (zhi < zf){
zhi *= 2 ;
i++;
}
System.out.println("需要折叠" + (i+1) +"次才能超过");
}
}
区别与选择
for
循环和 while
循环的最大区别在于语法结构和使用场景的不同。for
循环适用于已知循环次数的情况,而 while
循环适用于未知循环次数的情况。
- 当循环次数已知且需要对循环控制变量进行初始化、条件检查和更新时,推荐使用
for
循环。 - 当循环次数不确定或者需要在循环开始前进行条件检查时,可以使用
while
循环。
总结
for
循环和 while
循环是 Java 中两种常用的循环结构,它们各自有着不同的语法和用法。通过掌握这两种循环,我们可以更加灵活地处理不同的循环场景,并编写出更加高效的 Java 代码。