考虑以下代码
val sc = new java.util.Scanner (System.in)
while (sc.hasNext()) {
var temp = sc.nextLine()
println(temp.nonEmpty)
println (temp)
}
每当我按空行enter
时,程序只会等待下一个输入发生并且不执行内部语句
例如
input:
<enter>
<enter>
1
原因
output:
<space>
false
<space>
false
1
true
我试图让用户输入一个行列表,然后退出空行
例如
1 2 3 4
5 6 7 8
<enter> // -> will exit
我将如何实现这一目标?
答案 0 :(得分:5)
我认为这有点像惯用语:
Iterator.continually(scala.io.StdIn.readLine).takeWhile(_.nonEmpty).foreach(line =>
println(s"read $line")
)
答案 1 :(得分:0)
添加if (temp.isEmpty) sys.exit(1)