在主方法中,“String args []”参数是什么?

390
以下Java代码的含义是什么?
public static void main(String[] args)
  • String[] args 是什么?

  • 何时会使用这些 args?

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

18个回答

7
我认为上面的答案已经很好地解释了 String args[] 是一个字符串参数数组,你可以在运行应用程序时将其传递给它。为了完整起见,我可以补充一点,即也可以将传递给 main 方法的方法参数定义为 String 类型的可变参数 (varargs):

public static void main (String... args)

换句话说,main 方法必须接受字符串数组 (String args[]) 或可变参数 (String... args) 作为方法参数。而且,args 的名称也没有什么神奇之处。你也可以像下面的例子中所示一样写成 arguments 或甚至是 freddiefujiwara

public static void main (String[] arguments)

public static void main (String[] freddiefujiwara)


6

public static void main(String args[])中,args是一个控制台行参数的字符串数组。

在这个数组中,您可以通过在命令行调用它们来存储各种字符串参数,如下所示:

java myProgram Shaan Royal

然后Shaan和Royal将被存储在数组中:

arg[0]="Shaan";

arg[1]="Royal";

当您不在命令行调用时,您也可以在程序内部手动执行此操作。


6

String[] args 表示传递给 "main" 函数的一系列字符序列(字符串)的数组。这发生在程序执行时。

例如,当您通过命令行执行Java程序时:

java MyProgram This is just a test

因此,该数组将存储:["This", "is", "just", "a", "test"]


4
除了之前的所有评论外,还需要补充以下内容。
public static void main(String[] args) 

可以写成

 public static void main(String...arg)

或者

 public static void main(String...strings)

4

String[] args参数是在操作系统命令行中运行应用程序时作为参数传递的字符串数组。

假设您已经编译并打包了一个Java应用程序myApp.jar。当然,您可以通过双击操作系统中的应用程序来运行它,但也可以使用命令行方式来运行它,例如(在Linux中):

user@computer:~$ java -jar myApp.jar

当您调用应用程序并传递一些参数时,例如:
user@computer:~$ java -jar myApp.jar update notify
java -jar 命令会将你的字符串 updatenotify 传递给你的 public static void main() 方法。
然后你可以这样做:
System.out.println(args[0]); //Which will print 'update'
System.out.println(args[1]); //Which will print 'notify'

3
首选样式是dataType[] arrayRefVar。样式dataType arrayRefVar[]来自C/C++语言,并被采用于Java以适应C/C++程序员。

0

你也可以像下面这样写语法。

public static void main(String... args)

这里的省略号,即在数据类型String后面的三个点,指定了零个或多个参数(可变数量的参数)。


-3

试一下这个:

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

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接