Java中三种类型循环完整指南

291 阅读4分钟

Java 循环重复执行一组语句,直到特定条件得到满足。在编程语言中,循环的特点是在某些条件评估为真时,频繁执行一组指令/函数。在Java中,有以下三种类型的循环:

  1. 循环
  2. While 循环
  3. 暂时性循环

Java for 循环

Java for 循环提供了一种简洁的编写循环结构的方式。与while循环不同,for语句在一行中消耗了初始化、条件和增量/减量,从而在Java编程中提供了更短、更容易调试的循环结构。 如果几个迭代是固定的,建议使用for循环。

语法

请看下面的语法:

for (initialization condition; testing condition; increment/decrement)
{
    statement(s)
}
  1. 初始化条件:在 这里,我们初始化一个正在使用的变量。它标志着for循环的开始。可以使用已经声明的变量,也可以使用可以声明的变量,只在循环的本地使用。
  2. 测试条件:它用于测试循环的退出条件。它必须返回布尔值。它也是**入口控制循环,**因为在执行循环语句之前要检查条件。
  3. 语句执行:一旦条件被评估为真,循环体中的语句就被执行。
  4. 递增/递减:它 用于为下一次迭代更新一个变量。
  5. 循环终止:当 一个条件为假时,for循环终止,标志着其生命周期的结束。

请看下面的代码例子:

class Loop {
    public static void main(String args[]) {
        for (int x = 19; x <= 22; x++)
            System.out.println("Value of x is:" + x);
    }
}

请看下面的输出:

➜  java javac Loop.java
➜  java java Loop
Value of x is:19
Value of x is:20
Value of x is:21
Value of x is:22
➜  java

Java 嵌套For循环

如果 我们把for循环放在另一个循环里面,它就被称为嵌套for循环。只要外循环执行,内循环就会完全执行。请看下面的代码例子:

class Loop {
  public static void main(String args[]) {
    for (int x = 19; x <= 22; x++) {
      for (int y = 19; y <= 22; y++) {
        System.out.println("Value of x and y are:" + x + " " + y);
      }
    }
  }
}

请看下面的输出:

➜  java javac Loop.java
➜  java java Loop
Value of x and y are:19 19
Value of x and y are:19 20
Value of x and y are:19 21
Value of x and y are:19 22
Value of x and y are:20 19
Value of x and y are:20 20
Value of x and y are:20 21
Value of x and y are:20 22
Value of x and y are:21 19
Value of x and y are:21 20
Value of x and y are:21 21
Value of x and y are:21 22
Value of x and y are:22 19
Value of x and y are:22 20
Value of x and y are:22 21
Value of x and y are:22 22
➜  java

Java for-each 循环

Java还包括在Java 5中引入的另一个版本的for循环。增强的for循环提供了一种更直接的方式来迭代一个集合数组 的项目。然而,它是不灵活的,只应 在需要依次迭代项目而不知道当前处理的项目的索引时使用。

另外,请注意,当使用增强的for循环时,对象/变量是不可改变的,也就是说,它确保数组中的值不能被修改,所以它可以说是只读循环,你不能更新这些值,而其他循环的值可以被改变。

我们建议尽可能使用for语句的这种形式,而不是一般形式。

在Java语言中,for-each循环会遍历一个数组或集合。它比简单的for循环更容易使用,因为我们不需要递增值和使用下标符号。

它是基于项目而不是基于索引工作的。它在定义的变量中一个接一个地返回项目。

请看下面的for-each循环的语法:

for(Type var: array){  

   //code to be executed  

}

请看下面的代码示例:

class Loop {
  public static void main(String args[]) {
    int arr[] = { 18, 19, 21, 29, 46 };
    for (int i : arr) {
      System.out.println(i);
    }
  }
}

请看下面的输出:

➜  java javac Loop.java
➜  java java Loop
18
19
21
29
46
➜  java

Java 不定式 For 循环

在for循环中使用两个分号(;;)将是无限的for循环。

见下面的语法:

for(;;){  

// code to be executed  

}

请看下面的代码例子:

class Loop {
  public static void main(String args[]) {
    for (;;) {
      System.out.println("AppDividend");
    }
  }
}

如果你运行上述代码,它将进入无限循环并打印AppDividend。

Java for 循环教程就到此为止。