Java中的For循环及其示例
For循环用于重复执行一组语句,直到特定条件返回false。在Java中,我们有三种类型的基本循环:for、while和do-while。在本教程中,您将学习Java中的for循环。您还将通过示例学习嵌套for循环、增强for循环和无限for循环。
for循环的语法:
for(初始化;条件;递增/递减)
{
声明;
}
初始化:在初始化部分,初始化循环计数器等变量(您通常会在循环中看到i和j,这些是循环计数器)。这是循环的可选部分,因为变量可以在循环之前初始化。当循环开始时,这只执行一次。
条件:这是循环的重要部分之一。此条件决定循环应一直重复到何时。循环不断重复,直到条件变为false。
增量/减量:在循环声明的这一部分,您可以指定循环计数器的增量或减量。这是为了修改循环计数器值,以便在某一点上条件变为false,循环结束。
语句:循环体中的语句为循环的每次迭代保持执行,直到循环停止。
for循环的执行流程
当程序执行时,解释器总是跟踪要执行的语句。我们称之为控制流,或者程序的执行流。
第一步:在for循环中,初始化首先进行,并且只进行一次,这意味着for循环的初始化部分只执行一次。
第二步:在每次迭代中评估for循环中的条件,如果条件为true,则执行for循环体中的语句。一旦条件返回false,for循环中的语句就不会执行,控件将转移到程序中for循环之后的下一个语句。
第三步:每次执行for循环的主体后,都会执行for循环中更新循环计数器的递增/递减部分。
第四步:在第三步之后,控制跳到第二步,重新评估条件。
示例:循环简单
这是for循环的一个简单示例。在这里,我们在循环体内部显示变量i的值。我们在循环中使用递减运算符,因此在循环的每次迭代后,i的值都会减少一,在某个点上,条件i>1返回false,这就是循环停止的时候。
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 output of this program is:
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
Java嵌套for循环
在另一个for循环中的for循环称为嵌套的for循环。让我们举一个例子来理解嵌套for循环的概念。在本例中,我们使用嵌套for循环打印图案。
public class JavaExample {
public static void main(String[] args) {
//outer loop
for(int i=1;i<=6;i++){
//inner loop
for(int j=1;j<=i;j++){
System.out.print("* ");
}
// this is to move the cursor to new line
// to print the next row of the pattern
System.out.println();
}
}
}
循环无限
从不停止执行的循环称为无限循环。当循环中定义的条件表达式从不返回false时,就会发生这种情况。以下示例将帮助您理解布尔表达式和增量/减量运算协调的重要性:
class ForLoopExample2 {
public static void main(String args[]){
for(int i=1; i>=1; i++){
System.out.println("The value of i is: "+i);
}
}
}
示例:使用for循环迭代数组
让我们看看for循环的另一个例子。在这里,我们使用for循环来迭代和显示数组元素。
class ForLoopExample3 {
public static void main(String args[]){
int arr[]={2,11,45,9};
//i starts with 0 as array index starts with 0 too
for(int i=0; i<arr.length; i++){
System.out.println(arr[i]);
}
}
}
增强的For循环
增强for循环是定义循环的另一种方式。当您想要迭代数组、ArrayList和其他集合类时,这一点尤其有用。这很容易读写。
让我们举上面看到的相同的例子。我们正在使用增强的for循环重写它。
class ForLoopExample3 {
public static void main(String args[]){
int arr[]={2,11,45,9};
for (int num : arr) {
System.out.println(num);
}
}
}