关于Java for-each附加变量声明

时间:2011-11-16 13:22:12

标签: java foreach

在正常for循环中,我们可以做多个变量声明&限制他们在循环中的范围

例如:如果我有一个

的ArrayList myList
for(int i=0, j=5 ; i <myList.size() ; i++, j--)

现在我和我j仅限于循环范围

我们可以做一些类似于for-each //限制范围的循环和放大也会在每次迭代时更改其值

for (Integer value : myList) {
}

2 个答案:

答案 0 :(得分:0)

int i = 0;
int j = 5;
for (Integer value : myList) {
  i++; j--;
  // Code
}

你仍然可以在for之外的范围内访问它们,但你无法在for:/

中对它们进行初始化

答案 1 :(得分:0)

基本上,使用增强的for循环,您将绑定到(隐藏的)迭代器表单。 因此,您无法将变量范围保留在循环中并对其进行修改,因为您无法在java中将static修饰符用于局部变量。克里斯蒂安的答案中描述了你能做的最好的事情。 (或者回到基本的for循环)