一尘不染

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

java

Java的for-each循环中是否有办法

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循环中提供此类计数器的唯一方法是?


阅读 475

收藏
2020-03-13

共1个答案

一尘不染

不可以,但是你可以提供自己的柜台。

这样做的原因是,for-each循环在内部不具有一个计数器; 它基于Iterable接口,即它使用一个Iterator循环遍历“集合”的过程-可能根本不是一个集合,并且实际上可能根本不是基于索引的东西(例如链接列表)。

2020-03-13