迭代器有.next() - 有没有办法得到前一个元素而不是下一个元素?
2022-09-02 05:00:31
我有一个在HashMap上使用的迭代器,我保存并加载迭代器。有没有办法使用迭代器在HashMap中获取上一个密钥?(java.util.Iterator)
更新
我将其保存为Red5连接中的属性,然后将其加载回去以继续在我停止的地方工作。
另一个更新
我正在迭代哈希映射的键集
我有一个在HashMap上使用的迭代器,我保存并加载迭代器。有没有办法使用迭代器在HashMap中获取上一个密钥?(java.util.Iterator)
我将其保存为Red5连接中的属性,然后将其加载回去以继续在我停止的地方工作。
我正在迭代哈希映射的键集
您可以使用 代替 。ListIterator 有 和 方法。ListIterator
Iterator
previous()
hasPrevious()
正如其他人所指出的那样,不是直接的,但是例如,如果您需要访问前一个元素,则可以轻松地将其保存在单独的变量中。
T previous = null;
for (Iterator<T> i = map.keySet().iterator(); i.hasNext();) {
T element = i.next();
// Do something with "element" and "previous" (if not null)
previous = element;
}