java中如何判断输入的是int还是double?
展开全部
用try...catch就很方便了,同时做了数据类型转换:
//s是获得到的String值
try{
int a = Integer.parseInt(s);
}catch(NumberFomatException e1){
try{
double b = Double.parseDouble(s);
}catch(NumberFomatException e2){
System.out.println("输入数据类型不符!");
}
}
还有,照一楼的说法,做遍历查找是否包含小数点,还不如用indexof()更好,要循环干嘛。
//s是获得到的String值
int index = s.indexOf(".");
//indexOf()返回小数点的下标,找不到的话返回-1
boolean flag = false;
if(index!=-1){
flag = true; //true表示有小数点,就是说是double数据
}
//if判断可以用三目运算符代替:flag = (index==-1)? false:true;
//s是获得到的String值
try{
int a = Integer.parseInt(s);
}catch(NumberFomatException e1){
try{
double b = Double.parseDouble(s);
}catch(NumberFomatException e2){
System.out.println("输入数据类型不符!");
}
}
还有,照一楼的说法,做遍历查找是否包含小数点,还不如用indexof()更好,要循环干嘛。
//s是获得到的String值
int index = s.indexOf(".");
//indexOf()返回小数点的下标,找不到的话返回-1
boolean flag = false;
if(index!=-1){
flag = true; //true表示有小数点,就是说是double数据
}
//if判断可以用三目运算符代替:flag = (index==-1)? false:true;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询