나는 항상 Predef.println
이 System.out.println
의 바로 가기라고 생각했지만, 분명히 오해했습니다. System.out
을 전혀 사용하지 않는 것 같습니다. 왜 이렇게이다? 그리고 아래 스칼라에서 System.out
의 "리디렉션"을 어떻게 수행 할 수 있습니까?println 대 스칼라의 System.out.println
scala> val baos = new java.io.ByteArrayOutputStream
baos: java.io.ByteArrayOutputStream =
scala> val ps = new java.io.PrintStream(baos)
ps: java.io.PrintStream = [email protected]
scala> System.setOut(ps)
scala> println("hello")
hello
scala> new String(baos.toByteArray)
res2: java.lang.String = ""
scala> System.out.println("hello")
scala> new String(baos.toByteArray)
res7: java.lang.String =
"hello
"
https://issues.scala-lang.org/browse/SI-4793을 참조하십시오. – huynhjl