Java 命令行参数
提示
- 命令行参数的使用:Java 允许通过命令行传递参数给程序,这些参数在程序中作为字符串数组存储。
- 参数的传递和输出:在命令行中,参数紧跟在类名之后,并在程序中通过遍历
args
数组来输出。 - 数值型参数转换:尽管 Java
main()
方法仅接受字符串类型参数,我们可以使用如Integer.parseInt()
方法将其转换为数值型数据。
Java 中的命令行参数允许我们在程序执行过程中传递参数。
正如其名,这些参数是通过命令行传递的。
示例:命令行参数
class Main {
public static void main(String[] args) {
System.out.println("命令行参数是");
// 遍历所有参数
for(String str: args) {
System.out.println(str);
}
}
}
让我们尝试用命令行运行这个程序。
1. 编译代码
javac Main.java
2. 运行代码
java Main
假设我们想在运行程序时传递一些参数,我们可以在类名之后传递这些参数。例如,
java Main apple ball cat
这里的 apple
、ball
和 cat
是通过命令行传递给程序的参数。现在,我们将得到以下输出。
命令行参数是
Apple
Ball
Cat
在上述程序中,main()
方法包含了一个名为 args
的字符串数组作为其参数。
public static void main(String[] args) {...}
这个 String
数组存储了通过命令行传递的所有参数。
注意:参数总是以字符串形式存储,并且总是用空白分隔。
传递数值型命令行参数
每个 Java 程序的 main()
方法只接受字符串参数。因此,不能通过命令行传递数值型参数。
然而,我们可以稍后将字符串参数转换为数值型数 据。
示例:数值型命令行参数
class Main {
public static void main(String[] args) {
for(String str: args) {
// 转换为整数类型
int argument = Integer.parseInt(str);
System.out.println("以整数形式的参数:" + argument);
}
}
}
让 我们尝试通过命令行运行这个程序。
// 编译代码
javac Main.java
// 运行代码
java Main 11 23
这里 11
和 23
是命令行参数。现在,我们将得到以下输出。
以整数形式的参数
11
23
在上述示例中,请注意以下代码行
int argument = Integer.parseInt(str);
这里,Integer
类的 parseInt()
方法将字符串参数转换为整数。
类似地,我们可以使用 parseDouble()
和 parseFloat()
方法将字符串转换为 double
和 float
类型。
注意:如果参数无法转换为指定的数值类型,则会发生 NumberFormatException
异常。