方法参数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
Run Code Online (Sandbox Code Playgroud)
代码1:
object Example {
def main(args: Array[String]): Unit = {
println("Hello")
}
}
>> Hello
Run Code Online (Sandbox Code Playgroud)
代码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)
Run Code Online (Sandbox Code Playgroud) scala ×1