你可能从先前的编程经验已经知道,在几乎所有的编程语言中,循环语句都是其重要组成部分。Java也不例外。事实上,你将在第5章中看到,Java提供了一套功能强大的循环结构。For循环也许是最通用的。如果你对C或C++熟悉,那么你应该感到高兴,因为Java的for循环和其他语言中的for循环操作完全一样。如果你不熟悉C/C++,for循环也是容易使用的。最简单的for循环结构如下所示:
for(initialization; condition; iteration) statement;
在这个最常见的形式中,循环体的初始化部分(initialization)设置循环变量并为变量赋初始值。条件判断部分(condition)是测试循环控制变量的布尔表达式。如果测试的结果为真,循环体(statement)继续反复执行;如果测试的结果为假,循环结束。迭代部分(iteration)的表达式决定循环控制变量在每次循环后是如何改变的。下面的短程序说明了for循环的使用方法:
/*
Demonstrate the for loop.
Call this file "ForTest.java".
*/
class ForTest {
public static void main(String args[]) {
int x;
for(x = 0; x<10; x = x+1)
System.out.println("This is x: " + x);
}
}
这个程序产生的结果如下:
This is x: 0
This is x: 1
This is x: 2
This is x: 3
This is x: 4
This is x: 5
This is x: 6
This is x: 7
This is x: 8
This is x: 9
在这个例子中,x是循环控制变量。它在for的初始化部分被初始化为零。在每次重复迭代(包括第一次)的开始,执行条件测试x< 10。如果测试的结果为真,println ( )语句被执行,然后执行循环体的迭代部分。这个过程将持续进行下去,直到条件测试的结果为假。
有趣的是,在Java专业程序员编写的程序中,循环体的迭代部分一般不会像前面程序示例那样。即你很少会看到下面的语句:
x = x + 1;
原因是Java有一个特殊的增量运算符,能够更高效地执行这项操作。该增量运算符是“++”(即2个加号)。递增运算符每次使其作用对象加1。通过使用递增运算符,上条语句可以这样写:
x++;
这样,前述的for循环语句通常写成这样:
for(x = 0; x<10; x++)
你可以将上一个程序的for循环语句改写成这样试一下。你将看到,运行结构与以前相同。
Java也提供一个递减运算符:“--”(即2个减号)。递减运算符使其作用对象每次减1。