Scalaのブロックを省略したい
Scalaの構文で悩み中。 ブロックを引数に持つ関数を、ブロック無しでも使うことは出来ないのだろうか? (イメージ的にはrubyのNet::HTTP#getに近いかな)
例えば、こんな感じ。
def hoge(n:String)(block:String => Unit=null):Option[String] = {
println(n)
if (block != null) block(n)
return Some(n)
}
val n = hoge("2")
val m = hoge("2") { s=>
println(s + ":" + s)
}
実際にはこういうことは出来ないらしい。
現実的にはこんな感じ?
def hoge(n:String, block:String => Unit=null):Option[String] = {
println(n)
if (block != null) block(n)
return Some(n)
}
val n = hoge("2")
val m = hoge("2", {s=>
println(s + ":" + s)
}
)