### for 循环语句

for 循环是 Java 程序设计中最有用的循环语句之一。一个 for 循环可以用来重复执行某条语句，直到某个条件得到满足。在 Java5 以后新增了 foreach 语法，对这两种 for 循环形式做详细的介绍。

#### 1．for 语句

语法如下：

for(表达式 1;表达式 2;表达式 3)

{

语句序列

}

表达式 1：该表达式用于初始化循环控制变量，它只在循环开始时执行一次。

表达式 2：循环条件表达式，它的类型为 boolean，如果表达式的值为 true 就执行一次循环体。

表达式 3：该表达式用于改变循环体变量的值。

for 循环语句的流程如图 1 所示。

图 1 for 循环流程图

For 循环的执行过程如下：

第一步：执行表达式 1，完成某一变量的初始化工作；例如 int i=0；

第二步：判断表达式 2 的值；例如 i<100。若表达式 2 的值为 true，则执行一次循环体；然后执行第三部，否则退出循环体结束 For 循环。

第三部：执行表达式 3，这部分通常执行循环控制变量的修改。

第四步：跳转到第二部继续执行循环

例 在项目中创建类 Circulate，在主方法中使用 for 循环来计算 100 以内（包括 100），所有偶数之和。

public class Circulate {

public static void main(String args[]) {

int sum = 0; // 声明总和变量

for (int i = 0; i <= 100; i += 2) { // 定义 for 循环

sum += i; // 累加 100 以内的偶数

}

System.out.println("100 以内的所有偶数之和为：" + sum);

}

}

运行结果如图 2 所示。

图 2 运行结果

技巧：在编程时，有时会遇到使用for循环的特殊语法格式来实现无限循环，语法格式为：

for(;;){

循环体

}

对于这种无限循环可以通过break语句跳出循环，例如：

for(;;){

if(x <20)

break;

x++;

}

#### 2．foreach 语句

foreach 语句是 for 语句的特殊简化版本，但是 foreach 语句并不能完全取代 for 语句，然而任何的 foreach 语句都可以改写为 for 语句版本。foreach 并不是一个关键字，习惯上将这种特殊的 for 语句格式称之为 foreach 语句。foreach 语句在遍历数组等方面为程序员提供了很大的方便。

语法如下：

for(元素变量 x : 遍历对象 obj){

引用了 x 的 java 语句;

}

foreach 语句中的元素变量 x，不必对其进行初始化，下面通过简单的例子来介绍 foreach 语句是怎样遍历一维数组的。

例 在项目中创建类 Repetition，在主方法中定义一维数组，并 foreach 语句遍历该数组。

public class Repetition { // 创建类 Repetition

public static void main(String args[]) { // 主方法

int arr[] = { 7, 10, 1 }; // 声明一维数组

System.out.println("一维数组中的元素分别为："); // 输出信息

for (int x : arr) {

System.out.println(x); foreach 语句，int x 引用的变量，arr 指定要循环遍历的数组，最后将 x 输出

}

}

}

运行结果如图 3 所示。

图 3 运行结果