Java for循环和增强for循环的区别

Java for循环和增强for循环的区别

当涉及到遍历元素时,Java提供了许多选择,其中两个流行的循环结构是传统的和增强的“for each”循环,它们各自提供了不同的方法来完成这个任务。了解这些机制的差异是重要的信息,可以帮助Java程序员在特定情况下做出明智的决策,以确定哪种风格最适合。

语法

传统的for循环的语法如下:

for (initialization; condition; increment/decrement) {
   // Code to be executed
}

增强型for循环,也称为“foreach”循环,具有不同的语法:

for (datatype variable : collection) {
   // Code to be executed
}

语法解释

传统的for循环由三个部分组成:初始化、条件和增量/减量。初始化步骤在开始时执行一次。在每个循环之前,条件被评估,如果为真,则执行循环内的代码。在每个循环之后,执行增量/减量步骤。

另一方面,改良的for循环通过消除初始化、条件和增量/减量步骤来简化语言结构。它直接迭代集合或数组。

方法1:传统for循环

步骤

  • 初始化一个变量。

  • 指定执行循环的条件。

  • 执行循环内的代码块。

  • 增加或减少变量。

示例

public class TraditionalForLoopExample {
   public static void main(String[] args) {
      for (int i = 0; i < 5; i++) {
         System.out.println("Iteration: " + i);
      }
   }
}

输出

Iteration: 0
Iteration: 1
Iteration: 2
Iteration: 3
Iteration: 4

解释

代码开始声明一个名为TraditionalForLoopExample的公共类。

在教室里,人们可以发现一个名为main方法的基本过程。这个组件作为程序启动执行的入口。

for关键字表示循环结构的开始。

int i = 0初始化一个循环控制变量i的初始值为0。

i < 5是确定循环是否继续执行的条件。只要i小于5,循环就会继续迭代。

这段代码使用迭代语句来更新一个递增的整数变量’ i ‘。在我们的程序循环实现的每个后续周期中,我们都会通过我们的命令流(在此处提到的’++’)向’i’的当前值添加一个(让我们能够轻松跟踪当前迭代器)。包含在通过大括号{}引用的块中,我们有我们在谈论“循环”时,程序的“程序性伞下”的所有内容。在这里有一个特殊的命令 – System.out.println(“迭代:”+ i); -输出包含文本(“迭代”)和当前运行时屏幕上的变量的数据。

循环将继续执行,直到条件i < 5变为false。在这种情况下,当i达到值5时,条件不再为真,循环终止。

方法2:增强型for循环

步骤

  • 声明一个变量来保存集合的每个元素。

  • 指定要迭代的集合。

  • 使用声明的变量访问每个元素,执行循环内的代码块。

  • 考虑以下增强型for循环的示例

示例

public class EnhancedForLoopExample {
   public static void main(String[] args) {
      String[] fruits = {"Apple", "Banana", "Orange"};
      for (String fruit : fruits) {
         System.out.println("Fruit: " + fruit);
      }
   }
}

输出

Fruit: Apple
Fruit: Banana
Fruit: Orange

说明

代码从声明一个名为EnhancedForLoopExample的公共类开始。

在课堂范围内,一个被称为主方法的基本过程是很常见的。这样的组件作为该程序开始执行的入口。

声明了一个String类型的数组fruits。这行代码创建了一个名为fruits的数组,它可以保存String类型的值。该数组被初始化了三个元素:”苹果”,”香蕉”和”橙子”。

增强型for循环简化了对数组和集合的迭代过程。

循环遍历fruits数组中的每个元素,将当前元素赋值给循环变量fruit。

对于每次迭代封闭在大括号{}中的代码块的执行,可以轻松地打印出水果数组中的每个单独元素。输出包括一个静态标签”Fruit: “和一个变量值,表示在任何时刻迭代中的一个特定项,通过System.out.println(“Fruit: ” + fruit)。这种方法消除了使用手动索引技术常用于遍历数据集(如数组)时存在的任何有关顺序错位或索引间隙的风险。

for循环和增强型for循环在Java中的区别

不同之处 传统的for循环 增强型for循环
语法 需要明确的初始化、条件和增减步骤 简化语法,不需要初始化、条件或增减步骤
迭代控制 提供更多对初始化、条件和增减步骤的控制 自动迭代集合或数组的元素
访问元素 可以使用索引变量和数组/集合大小访问元素 直接访问元素,不需要索引或大小
代码可读性 需要明确处理迭代细节 通过抽象迭代细节来提高代码可读性
用例 适用于需要明确控制迭代的情况 理想用于迭代集合或数组,而不需要复杂的迭代要求

结论

传统的for循环和增强的for循环在Java编程中各有自己的重要性。传统的for循环提供了更大的灵活性和对重点处理的控制,允许程序员定义初始化、条件和递增/递减步骤。它通常在循环次数或特定条件在开发中已知的情况下使用。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程