java判断数据类型
java编程中关于数据类型判断
没必要做判断,用异常处理就可以了 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不是这个问题的好方法
Java程序 判断数据类型
instanceof运算符,是用来在运行时指出对象是否是特定类的一个实例。instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例。 用法: result = object instanceof class 而你的代码:if (!(x instanceof Double)判断的是一个double基本类型数据是否是一个Double对象,这肯定不行,如果还不清楚,进5044群5871
123.12应该为double(java默认为double,如:float a=123.12 会出错的哦) 123是int 123.0为double(同上面的) ‘a'为char “a”为string true为变量名,我不知道是什么数据类型(另外提一下书上看到引用数据类型包括类、数组、接口)。 false为boolean