是否有通过 sorted 的元素进行成对迭代的 Java 习惯用法Collection
?我的意思是每次迭代都可以访问集合的一个元素和集合的下一个元素?
对于排序List
的 s(和数组),可以使用集合中的索引来完成:
final int n = list.size();
assert 2 <= n;
for (int i = 0; i < n - 1; ++i) {
final Thing thing1 = list.get(i);
final Thing thing2 = list.get(i+1);
operateOnAdjacentPair(thing1, thing2);
}
但是呢SortedSet
?(因为SortedMap
您可以使用它的entrySet()
,这相当于SortedSet
案例)。
因此,例如,如果您的排序集包含值 {1, 2, 3, 4},则迭代将按顺序对 (1, 2), (2, 3), (3, 4) .