循环用于重复执行一组语句,直到满足特定条件。
在Java中,我们有三种类型的基本循环:for,while和do-while。
在本教程中,我们将学习如何在Java中使用“ for ”循环。
for循环的执行流程
当程序执行时,解释器总是跟踪将要执行的语句。
我们将其称为控制程序的执行流程:
第一步:在for循环中,初始化只发生一次,这意味着for循环的初始化部分只执行一次。
第二步:在每次迭代时评估for循环中的条件,如果条件为真则执行循环体内的语句。一旦条件返回false,for循环中的语句就不会执行,并且控制在for循环后被转移到程序中的下一个语句。
第三步:每次执行for循环体后,for循环的递增/递减部分执行更新循环计数器。
第四步:第三步后,控制跳转到第二步,重新判断循环条件。
简单的for循环示例:
class ForLoopExample {
public static void main(String args[]){
for(int i=10; i>1; i--){
System.out.println("The value of i is: "+i);
}
}
}
程序输出:
The value of i is: 10
The value of i is: 9
The value of i is: 8
The value of i is: 7
The value of i is: 6
The value of i is: 5
The value of i is: 4
The value of i is: 3
The value of i is: 2
在上面的程序中:
int i = 1是初始化表达式
i> 1是基本条件(是个布尔表达式)
i–是递减操作
死循环
布尔表达式和递增/递减操作协调的重要性:
class ForLoopExample2 {
public static void main(String args[]){
for(int i=1; i>=1; i++){
System.out.println("The value of i is: "+i);
}
}
}
这是一个无限循环,因为条件永远不会返回false。
初始化步骤是将变量i的值设置为1,因为我们正在递增i的值,它总是大于1(布尔表达式:i> 1)所以它永远不会返回false。
这最终会导致无限循环条件。
因此,看到布尔表达式和递增/递减操作之间的协调以确定循环是否将在某个时间点终止非常重要!
这是无限for循环的另一个例子:
// 无限循环
for ( ; ; ) {
// statement(s)
}
for循环示例迭代数组
这里我们使用for循环迭代并显示数组元素。
class ForLoopExample3 {
public static void main(String args[]){
int arr[]={2,11,45,9};
// 数组索引以0开始
for(int i=0; i<arr.length; i++){
System.out.println(arr[i]);
}
}
}
输出:
2
11
45
9
增强版For循环
当您想要迭代数组/集合时,增强版for循环非常有用,它易于编写和理解。
让我们采用上面编写的相同示例,并使用增强型for循环重写它:
class ForLoopExample3 {
public static void main(String args[]){
int arr[]={2,11,45,9};
for (int num : arr) {
System.out.println(num);
}
}
}
程序输出:
2
11
45
9
注意:
在上面的例子中,我在增强的for循环中声明了num为int类型。
这是根据数组的数据类型而改变。
例如,字符串类型的增强for循环将如下所示:
String arr[]={"hi","hello","bye"};
for (String str : arr) {
System.out.println(str);
}
原文地址:
https://beginnersbook.com/2015/03/for-loop-in-java-with-example/