比如如下语句:
radioFrequencyDO.setTransmittingPower(Double.parseDouble(row.getCell((short) 5).getStringCellValue()));
在实体类中RadioFrequencyDO中transmittingPower这个字段我定义为Double,在阿里java编码规范中也有讲,对于DO类中的属性,全部使用包装类型。这样可以根据是否为null做更多的处理!
在这里使用了Double.parseDouble进行转换,如果使用了Double.valueOf,进行转换,在MongoDB中会出现106.1-->106.0999...
这个我还没有搞懂,不知道为什么!求解答。
Double.valueOf与Double.parseDouble的区别,网上有一大堆,Double.valueOf返回的是Double类型,而另一个返回的是double.double=Double.valueOf.doubleValue.
//下面这种情况会出现:java.lang.NullPointerException
Double j=null;
double b = j;
System.out.println(b);
因为,在包装类型转基本类型时,会隐式的调用doubleValue,必然会因为j是null而出现NPE现象。