为什么Array <String>是kotlin中主要函数的选定参数类型?

Zor*_*gan 0 java jvm kotlin

Kotlin的主要功能:

fun main(args : Array<String>) { 
  println("Hello, world!") 
}
Run Code Online (Sandbox Code Playgroud)

为什么要传入数组?

s1m*_*nw1 5

的签名main基于Java虚拟机的期望

该方法main必须声明public, static, and void。它必须指定一个声明的类型为String数组的形式参数(第8.4.1节)。因此,可以使用以下任何一种声明:

public static void main(String[] args)
public static void main(String... args)
Run Code Online (Sandbox Code Playgroud)

这就是Kotlin编译器将您的主要功能编译到的内容。从Kotlin 1.3开始,显式Array<String>可以省略,但在字节码中仍然可用。