【发布时间】:2013-12-11 01:19:24
【问题描述】:
在java中,根据Java Language Specification 12.1.4,main方法应该声明如下:
public static void main(String[] args){
//code of program
}
通过使用String[] args,我们可以获得命令行参数。有时需要将这些命令行参数转换为适当的类型。假设如果您提供了任何数字 123 作为参数,并且您想将其转换为 int,那么我们可以使用以下转换方法之一:
int n1=Integer.valueOf(args[0]);
//or
int n2=Integer.parseInt(args[0]);
但是,如果 java 可以提供使用 Objects[] args 而不是 String[] args,那么我们可以轻松地从一种类型转换为另一种类型,例如,转换如下:
public static void main(Object[] args){
int n1=(Integer)args[0];
}
我不明白为什么 java 使用 String[] args 而不是 Object[] args?
【问题讨论】:
-
简单。如何通过命令行传递对象?
-
命令行提供字符串。你如何区分字符串和整数?仅仅作为一个数值不足以将其视为整数。
-
Ravi - 超越我们目前所做工作的界限思考是件好事。仅供参考 - Powershell/.NET/C#/Cmdlets 实际上可以做这样的事情msdn.microsoft.com/en-us/library/ms714395%28v=vs.85%29.aspxcrazorsharp.blogspot.com/2009/12/…
标签: java command-line-arguments command-prompt