【发布时间】:2018-09-13 00:14:40
【问题描述】:
我对 Scala 的 dropWhile 谓词与迭代器的使用有疑问。 这里我有一个简单的迭代器创建:
scala> val it = Iterator("a" , "number" , "of" , "words")
it: Iterator[String] = non-empty iterator
接下来我使用 dropWhile 谓词:
scala> it dropWhile ( _.length < 2 )
res52: Iterator[String] = non-empty iterator
接下来我在迭代器上执行下一条命令:
scala> it next
res53: String = of
现在注意迭代器下一个命令返回 "of" ,超过它应该是的。
如果我把同样的代码放在一个主函数中,下一个将返回“a”。 这相当令人困惑。有人可以解释一下吗?
【问题讨论】:
标签: scala iterator main read-eval-print-loop