当我们调用方法时,你可以用形参名标记实参,如下
def printName(first: String, last: String): Unit = { println(first + " " + last) } printName("John", "Smith") // Prints "John Smith" printName(first = "John", last = "Smith") // Prints "John Smith" printName(last = "Smith", first = "John") // Prints "John Smith"
注意被命名的实参的顺序是可以重新排序的。但是,如果某个实参被命名了但是它没有按原来的顺序摆放,则其他未命名的参数必须放在命名的参数的前面,而且按照顺序摆放
printName(last = "Smith", "john") // error: positional after named argument
注意,命名参数不适用于对java方法的调用