方法參數String*
和Array[String]
之間是否有區別?Scala:方法參數String *和Array [String]之間是否有區別
控制檯:
scala> def main(args: Array[String]): Unit = {}
main: (args: Array[String])Unit
scala> def main(args: String*): Unit = {}
main: (args: String*)Unit
代碼1:
object Example {
def main(args: Array[String]): Unit = {
println("Hello")
}
}
>> Hello
代碼2:
object Example {
def main(args: String*): Unit = {
println("Hello")
}
}
>> Exception in thread "main" java.lang.NoSuchMethodException: Example.main([Ljava.lang.String;)
at java.lang.Class.getMethod(Class.java:1786)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:126)
[如何將scala數組傳遞給scala可變參數方法?](https://stackoverflow.com/questions/31064753/how-to-pass-scala-array-into-scala-vararg-method) – prayagupd