我想创建延迟序列以从Scala中的输入流中读取值。
import java.util._
object Main {
val input = new Scanner(System.in)
def main(args: Array[String]) {
val it = new MyIt().take(5)
}
class MyIt extends Iterator[Int] {
def hasNext = true
// def next = 29
def next = input.nextInt
}
}
当我将next = 29更改为next = input.nextInt时,它不再编译抱怨MyIt没有成员。看起来我完全误解了一些东西。你能不能给我提示(或者链接到关于懒惰序列的好文章 - 谷歌有很多结果,但是垃圾太多了,似乎 - 所以我迷路了)
答案 0 :(得分:2)
import java.util._
使用scala.collection.Iterator
覆盖scala
(默认情况下,通过java.util.Iterator
包对象中的类型别名提供)。只需将导入更改为import java.util.Scanner