にジェネリック型とラムダを使用してmyFunc
の第2引数は、複雑な引数を持つ関数である:はScalaの
def myFunc(list : List[String],
combine: (Map[String, ListBuffer[String]], String, String) => Unit) = {
// body of myFunc is just a stub and doesn't matter
val x = Map[String, ListBuffer[String]]()
list.foreach ((e:String) => {
val spl = e.split(" ")
combine(x, spl(0), spl(1))
})
x
}
私はmyFunc
に2つ目の引数を渡す必要があるので、様々なタイプA, B
の代わりに特定して使用することができますString, ListBuffer[String]
。
def myFunc(list : List[A], combine: (Map[A, B], A, A) => Unit) = {
val x = Map[A, B]()
list.foreach(e => {
combine(x, e)
})
}
このような構造体を宣言して呼び出すにはどうすればいいですか?あなたは次のことを行うことができます
)=>単位) ' – marstran