我刚开始用Java写程序。下面的Java代码是什么意思?

public static void main(String[] args)

什么是字符串[]参数? 什么时候使用这些参数?

源代码和/或示例优先于抽象的解释。


当前回答

在Java中,args以String对象数组的形式包含提供的命令行参数。

换句话说,如果你在你的终端上运行你的程序:

C:/ java MyProgram one two

然后args将包含["one", "two"]。

如果你想输出参数的内容,你可以像这样循环它们…

public class ArgumentExample {
    public static void main(String[] args) {
        for(int i = 0; i < args.length; i++) {
            System.out.println(args[i]);
        }
    }
}

程序将在终端中打印:

C:/ java MyProgram one two
one
two
    
C:/

其他回答

我认为上面的答案很好地涵盖了String args[]只是一个字符串参数的数组,当你运行它时,你可以传递给你的应用程序。为了完成,我可能会补充说,将传递给主方法的方法参数定义为String类型的变量参数(varargs)也是有效的:

public static void mainargs)

换句话说,main方法必须接受String数组(String args[])或varargs (String…Args)作为方法参数。args这个名字也没有什么神奇之处。你也可以写参数,甚至freddiefujiwara,如下所示:

public static void main (String[]参数)

public static void main (String[] freddiefujiwara)

试试这个:

System.getProperties().getProperty("sun.java.command", 
    System.getProperties().getProperty("sun.rt.javaCommand"));

我会分手

public static void main(String args[])

在部分。

"public"意味着main()可以从任何地方调用。

"static"意味着main()不属于特定对象

"void"表示main()不返回任何值

main是函数名。Main()是特殊的,因为它是程序的开始。

"String[]"表示String数组。

"args"是String[]的名称(在main()函数体中)。"args"不是特殊的;你可以给它取任何别的名字,程序还是一样的。

String[] args是一个字符串的集合,用空格分隔,可以在终端上输入程序。很多时候,初学者不会使用这个变量,但它总是存在,以防万一。

当从控制台中执行java类时,将调用main方法。为了实现这一点,这个主方法的定义必须是

public static void main(String [])

这个字符串数组被称为args是一个标准约定,但不是严格要求的。在调用程序时,可以在命令行中填充此数组

java MyClass a b c

它们通常用于定义程序的选项,例如要写入或读取的文件。

除了前面所有的评论。

public static void main(String[] args) 

可以写成

 public static void main(String...arg)

or

 public static void main(String...strings)