java中如何判断输入的是int还是double?

 我来答
马蹄莲anita
2018-03-03 · 超过14用户采纳过TA的回答
知道答主
回答量:40
采纳率:0%
帮助的人:0
展开全部
用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;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式