有没有办法在Java的for-each循环中访问迭代计数器?

问题:

在Java的每个循环中有一种方法

for(String s : stringArray) {
  doSomethingWith(s);
}

以了解循环已经被处理的频率?
除了使用旧的和知名的for(int i=0; i < boundary; i++)循环,是构造

int i = 0;
for(String s : stringArray) {
  doSomethingWith(s);
  i++;
}

在每个循环中有这样一个计数器的唯一方法?

回答:

不,但您可以提供自己的柜台。
这样做的原因是for-each循环内部不是have一个计数器;它是基于Iterable接口,即它使用Iterator循环遍历“集合” – 这可能不是一个集合,并且实际上可能不是基于索引的东西(例如链表)。

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Is there a way to access an iteration-counter in Java’s for-each loop?

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

83 − 75 =