// iteratorFunc is Iterable[SomeClass]
val iterator1 = iteratorFunc.iterator
iterator1 foreach {
...
}
val iterator2 = iteratorFunc.iterator
iterator2 foreach {
...
}
里面的代码iterator1 foreach
就成功完成了。但是, iterator2 给出了空的迭代器。
请帮忙。
// iteratorFunc is Iterable[SomeClass]
val iterator1 = iteratorFunc.iterator
iterator1 foreach {
...
}
val iterator2 = iteratorFunc.iterator
iterator2 foreach {
...
}
里面的代码iterator1 foreach
就成功完成了。但是, iterator2 给出了空的迭代器。
请帮忙。
你应该复制它。
val (iterator1, iterator2) = iteratorFunc.iterator.duplicate
好吧,使用duplicate()
是超级昂贵的,因为next()
函数是同步的。您还需要缓存这两个迭代器之间的差异。