我刚开始用Java写程序。下面的Java代码是什么意思?
public static void main(String[] args)
什么是字符串[]参数? 什么时候使用这些参数?
源代码和/或示例优先于抽象的解释。
我刚开始用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:/
其他回答
试试这个:
System.getProperties().getProperty("sun.java.command",
System.getProperties().getProperty("sun.rt.javaCommand"));
这些是Java中的命令行参数。
换句话说,如果你跑
java MyProgram一二
然后args包含:
["一","二"]
public static void main(String [] args) {
String one = args[0]; //=="one"
String two = args[1]; //=="two"
}
这样做的原因是为了配置应用程序以特定的方式运行,或者为它提供所需的一些信息。
如果您是Java新手,我强烈建议您阅读官方的Oracle Java™教程。
当从控制台中执行java类时,将调用main方法。为了实现这一点,这个主方法的定义必须是
public static void main(String [])
这个字符串数组被称为args是一个标准约定,但不是严格要求的。在调用程序时,可以在命令行中填充此数组
java MyClass a b c
它们通常用于定义程序的选项,例如要写入或读取的文件。
String [] args也是在Java中声明String数组的方法。
在这个方法签名中,当方法被调用时,数组参数将被填充值(如这里的其他示例所示)。因为你正在学习,所以值得理解的是,这个args数组就像你在一个方法中自己创建一个一样,如下所示:
public void foo() {
String [] args = new String[2];
args[0] = "hello";
args[1] = "every";
System.out.println("Output: " + args[0] + args[1]);
// etc... the usage of 'args' here and in the main method is identical
}
dataType[] arrayRefVar是首选样式。dataType arrayRefVar[]样式来自C/ c++语言,并在Java中被采用,以适应C/ c++程序员。