scala之旅-核心语言特性【命名实参】(六)

当我们调用方法时,你可以用形参名标记实参,如下

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方法的调用

原文地址:https://www.cnblogs.com/zhouwenyang/p/13857743.html