首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

Float.parseFloat有关问题

2013-03-13 
Float.parseFloat问题把数据库中的字符串类型的值转化为浮点数用Float.parseFloat(string)但是当数据库中

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);
}

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

热点排行