java 小数类型选择 :float,double 和Bigdecimal
引用
商业项目注意float和double的使用
http://wenku.baidu.com/view/bffac8e9f8c75fbfc77db2eb.html
在《Effective?Java》中也提到这个原则:
float和double只能用来做科学计算或者是工程计算,在商业计算中我们要用
java.math.BigDecimal。???
怎样在实际中应用呢,其实也不难。简单提几点:?
1.??数据库表的设计?
资金字段的数据类型一般定义为number类型,长度可根据需要而定。?
2.?hibernate中po的属性的数据类型的定义?
???????有两种选择,建议用double,float会有精度丢失的问题。hibernate映射工具自动生成的.hbm.xml中,默认也是double类型。?
3.程序中资金的运算?
???????必须使用java.math.BigDecimal,而不能使用float或者double。建议写个工具类,提供些常用的方法供加减等运算使用。