我用jdbc连接oracle数据库,读取一个表中数值型字段的值,原值为空,但是读取后在结果集中发现为0.0,这是为什么呢?求大侠帮忙,谢谢!

解决方案 »

  1.   

    哦,是这样的结果集中的数据还是空值,但是我把结果集中的每一行数据转换为一个实体类的对象,转换后空值的数据就变成了0.0,这个字段对应的属性我定义为double类型,这是什么原因?谢谢
      

  2.   

    哦,是不是Double类型默认的空值是“0.0”啊!
      

  3.   

    你之前是不是进行了判断,如果取出来的结果为null,那么你转话的实体类的对象应该也是null
    这样的话肯定不会有默认的值了。
    “ 0.0 ”是double类型的默认值。
      

  4.   

    double变量的初始值就是0.0 如果是空的,那就默认声明一个都double变量,其值是0.0
      

  5.   

     改成Double.....你懂得。 
      

  6.   


    public class test
    {
    public static void main(String[] args)
    {
    BB bb = new BB();
    System.out.println(bb.b);
    }
    }class BB
    {
    //double b;
    Double b;
    }如果将变量b命名成Double类型,则输出“null”;
    如果将变量b命名成double类型,则输出“0.0”;
      

  7.   

    谢谢大家,呵呵,原来是Double而不是double,分不多,就给rexwangchn这个兄弟吧,他毕竟还做了测试代码,wjkxinxiang这位兄弟也很厉害,看出了问题的关键,谢谢了,再次感谢大家!