2.4.4、for语句

这篇Java教程基于JDK1.8。教程中的示例和实践不会使用未来发行版中的优化建议。

for语句

for语句为根据一个范围内的值进行迭代提供了方便。程序员经常把它叫做for循环是因为它在满足特定条件之前会一直执行循环。常见for语句的表达形式如下所示:

for(initialization;termination;increment){
	statement(s)
}

当使用这个版本的for语句时,要注意:

  • initialization 表达式会在循环开始之前,执行一次
  • 当termination表达式返回false时,循环终止
  • increment表达式在每次迭代体执行完后执行,推荐的表达式是对某个变量自增或者自减

下面的示例使用普通版本的for语句打印数字1到10:

class ForDemo{
	public static void main(String[] args){
		for(int count = 1;count <11;count++){
			System.out.println("Count is : " +count);
		}
	}
}

注意下代码中initialization表达式部分是怎么声明一个变量的,该变量的生命周期从声明开始直到for语句块的结尾,所以在termination和increment表达式中都可以使用这个变量。如果控制for语句的变量在循环外不会用到,那么最好是在initialization表达式中声明该变量。常见的i,j,k都是for循环中声明的变量名,在initialization表达式中声明这些变量限制了其作用范围从而减少错误。

for语句中的三个表达式都是可选的,如下将实现一个无限循环:

// infinite loop
for(;;){
//your code goes here
}

for语句针对集合或数组还有另外一种迭代形式,这种形式一般被称为for语句的加强版,它能使for语句更整洁也更便于阅读。为了向你演示这个特性,考虑下下面这个数组,它存储了数字1~10:

int[] numbers = {1,2,3,4,5,6,7,8,9,10};

下面的示例演示了使用加强版for来循环该数组

class EnhancedForDemo{
	public static void main(String[] args){
		int[] numbers = {1,2,3,4,5,6,7,8,9,10};
		for(int item : numbers){
			System.out.println("Count is : " + item);
		}
	}
}

输出如下:

Count is : 1
Count is : 2
Count is : 3
Count is : 4
Count is : 5
Count is : 6
Count is : 7
Count is : 8
Count is : 9
Count is : 10

我们推荐在任何可以使用增强版for语句的场景下都不要使用通用版的for循环。

你可能感兴趣的:(JDK1.8官方文档翻译)