这是JAVA1.5 增强的for 循环的新特性。
private int isNullorBlank(String... args){
int i = 1;
for(String item : args){
if(term == null || item.trim().equals("")) {
break;
}
i++;
}
return i;
}
所谓“增强的for 循环”,主要也是针对容器的。使用该项特性时,开发者可以将“利用iterator 遍历容器”的逻辑交给编译器来处理。
例如下列代码:
void cancelAll(Collection c){
for (Iterator i = c.iterator(); i.hasNext(); ) {
TimerTask tt = (TimerTask) i.nex t();
tt.cancel();
}
}
可以用增强的for 循环改写为:
void cancelAll(Collection c) {
for (Object o : c) {
(TimerTask)o).close();
}
编译器判断对象c 是一个Collection 子对象(即是容器)之后,就会允许使用增强的for 循环 形式,并自动取到c 的迭代器,自动遍历c 中的每个元素。 可以看到,上面的代码中仍然有一个强制类型转换(((TimerTask)o).close();)。实际上,这 项特性应该普遍地与泛型结合,以获得最大的利益。结合泛型之后,上述代码变成:
void cancelAll(Collection c) {
for (TimerTask task : c){
task.cancel();
}