是否可以使用命名参数创建部分应用的函数?

时间:2013-08-24 13:18:29

标签: scala

提供此功能

def foo( a: String = "bar", b: Int = 1, c: String = "default" ): String

有没有办法在不指定String => Stringa的情况下创建部分功能b?遗憾的是,我的方法foo( c = _: String )无法编译。还有其他选择吗?

1 个答案:

答案 0 :(得分:3)

如特拉维斯所述,这有效:

def foo( a: String = "bar", b: Int = 1, c: String = "default" ): String = s"$a$b$c"                                                
val fooc = (c: String) => foo(c = c)            
fooc("myc")
//> res0: String = bar1myc