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

标签 java loops for-loop foreach

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 循环中使用这种计数器的唯一方法是什么?

最佳答案

没有,但您可以提供自己的柜台。

原因是for-each循环内部没有计数器;它基于 Iterable接口(interface),即它使用 Iterator 循环遍历“集合”——它可能根本不是一个集合,实际上可能根本不是基于索引的东西(例如链表) .

关于java - 有没有办法在 Java for-each 循环中访问迭代计数器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/477550/

相关文章:

java - 如何获取从msb开始的特定位置上的位值?

r - 如何使用根据向量评估值的条件生成新列?

string - R字符串分割函数(strsplit)中的非字符参数

java - 如何知道使用以下代码将创建多少个对象?

java - 如何收集 JVM 启动时的性能/分析数据

javascript - Javascript 字段验证循环

javascript - 循环生成JSON

JavaScript concat 没有按预期工作,需要详细说明吗?

java - 如何在Java中通过两个for循环打印项目

java - RAD 中的 NoClassDefFoundError