以下、メソッドを関数オブジェクトに変換したり、カリーかしたりのメモ
- object Test {
- def main(args: Array[String]){
- var add2 = add _ // メソッドを関数オブジェクトに変換
- var addCurried = add2.curried // 関数オブジェクトをカリー化
- val addCurried2 = (add _).curried // こんな風にまとめてもOK
- print(add(2,3))
- print(add2(2,3))
- print(addCurried(2)(3))
- print(addCurried2(2)(3))
- }
- def add(a:Int, b:Int) = a + b
- }