增强for循环
之前在博客中有提到过这种for循环,我们这里详细看一下吧
for ( type 变量名:集合变量名 ) { … }
这个我们不去深究编译器是怎么实现的了,就像记住for( ; ; )一样,能用的很顺畅就好啦
a:迭代变量必须在( )中定义!
b:集合变量可以是数组或实现了Iterable接口的集合类。
举个栗子:(上一个栗子的add函数)
public static int add(int x,int ...args) {
int sum = x;
for(int arg:args) {
sum += arg;
}
return sum;
}
这里我们可以看下这个循环:for(int arg:args) {sum += arg;} 定义的时候,我们定义了int arg:args 可见:int arg是我们新定义的模板,通过上个栗子我们知道args其实是我们系统开辟的那个数组名,所以应该有一个比较清晰的了解了哦。那么,我们该如何使用这个数组里德元素呢??arg酱紫吗?肯定不行了,我们看程序里 sum += arg; 显然我们之接用我们定义的这个模板,不可思议哦,呵呵,不过记住就好啦,编译器这斯做的事情常常太过复杂,我们也不用马上全部都去熟悉,慢慢来了。
|
|