java编程中关于数据类型判断

来源:百度知道 编辑:UC知道 时间:2024/06/17 11:18:29
在编程中有一段代码:
从文件中读入数据到String类型变量str中,正常话这个数据是Double型的,我申请double型变量 a=Double.parseDouble(str).我想判断一下这个str中存放的数据是否是Double型的,不是的话做相应处理.例如,如果读入的是" China",显然不能做double型处理,如何判断读入的str是否是Double型呢

没必要做判断,用异常处理就可以了
double a;
try{
a=Double.parseDouble(str);
}catch(NumberFormatException e){
a=0;
System.out.println("不是数字");
}

建议还是直接Double.parseDouble(str).
完了套上try/catch模块,在catch里面处理非double的情况

Double.parseDouble(s) 用这个方法来转换,用try..catch 语句来处理,来判断他是否是数值,如果不是就会有异常,在异常中处理..

第二种方法:
String str = "China";
char[] ch = str.toCharArray();
for (char c : ch) {
if(c< 48 || c > 57 )
System.err.println("Is not a number!");
}

String regex="^[-]?\\d+\\.\\d+$";
if(str.matches(regex)){
double a=Double.parseDouble(str);
}else{
//错误处理
}
try...catch不是这个问题的好方法

放到catch里处理吧