给定以下带有可选参数的函数:
def foo(a:Int = 1, b:Int = 2, c:Int = 3) ...
我想保留 a 的默认值,但仅通过位置赋值(而不是命名赋值)将新值传递给 b 和 c,这是以下任何一种语法都很好:
foo( , 5, 7)
foo(_, 5, 7)
Scala 可以实现类似的功能吗?
最佳答案
无法跳过参数,但您可以在调用 foo
时使用命名参数。方法,例如:
// Call foo with b = 5, c = 7 and the default value for a
foo(b = 5, c = 7)
编辑 - 您特别询问了如何通过位置分配来做到这一点:这在 Scala 中是不可能的。
关于scala - 如何跳过Scala中的可选参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33402458/