java 中 用命令行参数接收输入 如何判断接收的数据是什么数据类型_百度...
发布网友
发布时间:2024-10-24 00:16
我来回答
共5个回答
热心网友
时间:5分钟前
一、在命令行或控制台中接收的数据,都是字符串型,需要强制转换。
强制转换时,需做空判断,如 if(str != null && !str.trim().equals("")){
int i = Integer.parseInt(str);}
二、其他情况判断数据类型时,可以用java的反射机制。举个例子:
import java.util.HashMap;
import java.util.Map;
public class Test {
public static void main(String aaa[]) {
Map m = new HashMap();
String s1 = "String1";
String s2 = "String2";
int i1 = 5;
double i2 = 10.5;
m.put(1, s1);
m.put(2, i1);
m.put(3, i2);
m.put(4, s2);
for (int i = 1; i <= m.size(); i++) {
Class returnType = m.get(i).getClass();
System.out.println("return type is of type: "
+ returnType.getSimpleName());
}
}
}
热心网友
时间:1分钟前
命令行接收的参数,不管你输入的啥,他都以字符串的形式引入到应用程序里
因为:main()方法的参数就是String[]类型的
如果你需要其他的类型,你就得在程序里把String类型的参数显式的转换
sun公司就这么弄的,没别的办法了
热心网友
时间:9分钟前
String 类型的,这是没得说.因为,void main(String[] args) 他传入的参数是 String数组,所以他是String 类型的
热心网友
时间:7分钟前
命令行接收的类型都是字符串型的,需强制转换
热心网友
时间:9分钟前
。。。。
LZ还记得?
public static void main(String[] args){
.......
}
注意看!
main 的 () 里已经定义出它的args 都是 string 引用类型