【发布时间】:2012-03-03 16:46:21
【问题描述】:
目前,我只有 3 种方法来比较 scala 中的两个迭代器(字符串类型):
// 1.
it1 sameElements it2
// 2.
it2.toList == it2.toList
// 3.
def compare(it1:Iterator[String], it2:Iterator[String]) {
while (it1.hasNext) {
if (!it2.hasNext) return false
if (it1.next != it2.next) {
return false
}
}
return !it2.hasNext
}
还有其他好的方法吗?
【问题讨论】:
-
为什么不使用你的第一种方式,
sameElements?我想这不只是被称为==的原因是因为它(必然)有副作用,清空迭代器。 -
如果你解释了这些有什么问题,那会有所帮助。
-
没有错,我只是想知道尽可能多的解决方案,用于学习scala。
标签: scala iterator comparison