字符串参数在 Java 的主方法中是强制性的吗?参数在什么时间读取?



我已经检查了许多网站,但没有得到正确的答案。任何人都可以告诉我答案。

它们是必需的,因为它们构成了方法签名的一部分,没有它们,java 不会将该方法识别为入口点。

每当您决定读取/使用参数时,都会读取它们,除非您需要它们,否则不需要读取它们。

当从命令行调用程序时,它们被填充,它们是命令行参数。

main方法中的String...args参数是一个 varargs。

它将表示您在运行 Java 应用程序时提供的所有参数。args确实是一个字符串数组(String[])。如果不给出任何参数,则数组为空。

来澄清:

字符串参数在 Java 的主方法中是强制性的吗?

在方法的签名中是的,主方法必须看起来像

public static void main(String args[]) {

如果您修改它,则该方法将永远不会被识别为应用程序的入口点,例如:

public static void main( ) {

并且您将收到一个错误,抱怨缺少主方法...

另一方面,这样做

public static void main(String args[]) {

并不意味着您需要强制使用字符串启动应用程序,您实际上可以不传递任何参数,这意味着数组 args 没有元素

参数在什么时间读取?

一旦你进入主方法...

你可以做:

public static void main(String args[]) {
System.out.println(args.length);

所以如果你不传递任何参数,你会得到一个 0,或者 n 是你传递 n 个参数(如果你来自其他语言,如 C++ 或 Python,这很棘手,其中应用程序的名称被认为是索引 0 的参数,不要让他们欺骗你:)

最新更新