读书人

Float.parseFloat有关问题

发布时间: 2013-03-13 10:56:58 作者: rapoo

Float.parseFloat问题
把数据库中的字符串类型的值转化为浮点数用Float.parseFloat(string)
但是当数据库中的值为null时在使用Float.parseFloat(null) 则报错
java.lang.NullPointerException
at sun.misc.FloatingDecimal.readJavaFormatString(Unknown Source)
at java.lang.Float.parseFloat(Unknown Source)
该怎么办啊?
[解决办法]
先判断,是否为空

比如,使用spring

float x = 0;
if(StringUtils.hasText(xxx)) {
x = Float.parseFloat(xxx);
}

就是这样
[解决办法]
Float.parseFloat(string==null?DEFAULT:string)
[解决办法]
(string==null ? Float.NaN : Float.parseFloat(string))
[解决办法]
判断是否为空 为空就给个默认值0 或者数据库设置该列默认值为0
[解决办法]
在页面上显示的时候最好不要出现Null,所以,每个数据从数据库里得到后,最好都判断下,尤其是数字,都给个默认值,这样会比较好
[解决办法]
NumberUtils.toFloat
[解决办法]

引用:

NumberUtils.toFloat


public static float toFloat(String str ,float defaultValue){
if(str==null){
return defaultValue;
}
try{
return Float.parseFloat(str);
}catch(Exception e){
}
return defaultValue;
}

public static float toFloat(String str ){
return toFloat(str,0.0F);
}

[解决办法]
确实。可以先判断是否为空 为空则给个默认值吧。就不会报空指针错误了

读书人网 >J2SE开发

热点推荐