具有多个变量声明的for循环

时间:2014-12-09 18:26:48

标签: java groovy

我很确定以下内容在Java中是合法的

for (int var1 = 2, var2 = 3; var1 < 10; ++var1) {
  System.out.println(var1);
}

但是当我尝试在Groovy控制台中运行它时,我收到此错误

  

意外令牌:=

Groovy是否不支持多个变量声明,还是有其他原因导致不允许这样做?

1 个答案:

答案 0 :(得分:7)

这是Java开发人员的常见问题。有关更多详细信息,请参阅此link

常见陷阱 您只能使用一个计数变量

摘录链接:

  

for Loops

     

另一个小的区别是你不能在for循环的第一部分初始化多个变量,所以这是无效的:

for (int count = someCalculation(), i = 0; i < count; i++) {
   ...
}
     

并且您需要在循环外部初始化count变量(一种罕见的情况,其中Groovy比Java更详细!):

int count = someCalculation()
for (int i = 0; i < count; i++) {
   ...
}
     

或者你可以跳过整个for循环并使用时间:

someCalculation().times {
   ...
}