Java如何获取传递给程序的命令行参数?
在创建Java应用程序时,我们可能希望将几个参数传递给我们的程序。为了从命令行传递参数,我们可以从main(String[]args)方法参数中读取它。
为了使一个类可执行,我们需要创建一个main()具有以下签名的方法:
public static void main(String[] args) { }
此方法采用一个数组String作为参数。这个数组是我们在命令行中传递给程序的参数。
package org.nhooo.example.basic; public class ArgumentParsingExample { public static void main(String[] args) { for (int i = 0; i < args.length; i++) { System.out.println("Argument " + (i + 1) + " = " + args[i]); } //如果要检查提供的参数数量 //符合计划要求,您可以检查尺寸 //arguments数组。 if (args.length < 3) { System.out.println( "You must call the program as follow:"); System.out.println( "java org.nhooo.example.basic.ArgumentParsingExample arg1 arg2 arg3"); //退出程序并显示错误状态,例如 //实例我们返回-1表示该程序 //异常退出 System.exit(-1); } System.out.println("Hello, Welcome!"); } }
当我们尝试运行不带参数的程序时,我们将看到以下消息:
$ java org.nhooo.example.basic.ArgumentParsingExample You must call the program as follow: java org.nhooo.example.basic.ArgumentParsingExample arg1 arg2 arg3
当我们传递三个参数时,我们得到的是:
$ java org.nhooo.example.basic.ArgumentParsingExample param1 param2 param3 Argument 1 = param1 Argument 2 = param2 Argument 3 = param3 Hello, Welcome!