1
172
不,但是你可以提供你自己的柜台。
原因是for each循环内部没有
有
一个计数器;它基于
Iterable
接口,即它使用
|
2
58
还有另一种方法。
既然你自己写了
在哪里实施
|
3
40
最简单的解决方案 是 只需运行自己的计数器:
这是因为没有实际的保证集合中的项(该变量
例如,请参见以下代码:
当你运行它的时候,你可以看到如下内容:
也就是说,顺序不被认为是集合的显著特征。 还有其他方法可以做到 没有 一个手动计数器,但它是一个公平的工作,为可疑的利益。 |
4
23
使用 兰姆达斯 和 功能接口 在里面 爪哇8 使创建新的循环抽象成为可能。我可以循环使用索引和集合大小的集合:
输出:
我执行为:
可能性是无限的。例如,我创建了一个抽象,它只对第一个元素使用一个特殊的函数:
正确打印逗号分隔列表:
我执行为:
图书馆将开始出现来做这些事情,或者你可以自己滚动。 |
5
16
恐怕这是不可能的
请注意,
List
界面允许您访问
(编辑) 对于您更改的示例:
|
6
15
Java 8介绍了
|
7
10
其中一个变化
这是句法上的甜头,但显然有很多人对这个特性提出了要求。但是,在获得批准之前,您必须自己计算迭代次数,或者使用带有
|
8
5
惯用解决方案:
|
9
2
如果你需要在for-each循环中有一个计数器,你必须计算你自己。据我所知,没有内置计数器。 |
10
1
帕克斯的回答有一个“变种”…;-)
|
11
1
有很多方法,但方法是其中之一 |
12
1
尽管有很多其他的方法可以达到同样的效果,但是我会为一些不满意的用户分享我的方法。我正在使用Java 8的ItSt流特性。 1。数组
2。表
|
13
0
我发现使用带有递增索引的简单for循环是最有效、最可靠的解决方案,如下所示: https://stackoverflow.com/a/3431543/2430549 |
14
0
对于偶尔只需要索引的情况,例如在catch子句中,有时会使用indexof。
|
15
0
下面是一个我如何做到这一点的例子。这将在for each循环中获取索引。希望这有帮助。
|
16
-4
我有点惊讶没有人提出以下建议(我承认这是一种懒惰的方法…); 如果StringArray是某种类型的列表,则可以使用StringArray.IndexOf之类的函数返回当前计数的值。 注意:这假定列表中的元素是唯一的,或者它们是否是非唯一的并不重要(因为在这种情况下,它将返回找到的第一个副本的索引)。 在某些情况下,这就足够了… |
Matt · 获取数组长度并推入每个对象 2 年前 |
Pouya · Foreach循环不添加计数器 2 年前 |
Andrea De Luca · 修改forEach中的元素使条目加倍 2 年前 |
XFMW · 为什么我的foreach循环不能统一编译?[重复] 2 年前 |
Red · 为什么我的字体大小不适合香草js? 2 年前 |
aRTURIUS · Terraform for_每个问题的数据类型 2 年前 |
Yerkin · 条件不适用于PHP和mysqli 2 年前 |