有人知道/解释为什么REPL在评估最后一个表达式时会卡住吗?奇怪的是,它没有抛出任何异常或其他东西,只是什么也没发生。
Welcome to Scala version 2.11.6 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_40).
scala> val empty = Seq.empty[Int].iterator
empty: Iterator[Int] = empty iterator
scala> val emptyInfiniteIterator = Iterator.continually(empty).flatten
感谢您提前给予任何解释。
(1 to 10).iterator span (_ < 5)
中所看到的那样覆盖toString
。 - som-snytttoString
的问题。由于某种原因,我想象中REPL使用其他方式来漂亮地打印值。可能我有ammonite在脑海中,它不使用toString
来处理标准类型。无论如何,现在所有的部分都已经到位了。 - AiveantoString
,当您尝试使用迭代器进行任何操作时,仍将出现相同的无限循环... OP创建的是一个无限循环等待发生的情况,如果您理解flatten
的含义,这一点应该是清楚的。 - Luigi Plinge