Scala:在'foreach'中读取具有curried功能的文件中的行?

时间:2014-10-31 12:08:34

标签: scala foreach partial-application

从文件中读取行我尝试在“foreach'中使用curried函数:

import scala.io.Source
object CurriedTest {

  def main(args: Array[String]): Unit = {
    fun("one")("two")("three")
    (fun2)("three")
    val lst = List ("x", "y", "z")
    lst.foreach(fun2) 
    lst.foreach(fun("000")("111") ) 
    Source.fromFile(args(0)).getLines.foreach(fun("AAA")("BBB") _)    
    Source.fromFile(args(0)).getLines.foreach(fun2)
  }

  def fun (a1: String) (a2:String) (a3: String) = {
    println("a1: "+a1+" a2: "+a2+" a3: "+a3)
  }

  def fun2 = fun("one")("two") _
}

出于某种原因,以下两种说法都没有:

    Source.fromFile(args(0)).getLines.foreach(fun("AAA")("BBB") _)    
    Source.fromFile(args(0)).getLines.foreach(fun2)

产生任何输出。为什么呢?

1 个答案:

答案 0 :(得分:0)

我找到了答案。我正在读一个自然产生空输出的空文件。对不起,感到困惑。