JAVA中,有体积这一字段,如1021.32 我应定义成String float 还是double?各有什么利弊?

还有这个字段 在数据库中 应该定义成varchar 还是number?

在java中不定义成String就可以了,那样计算着麻烦。
float是单精度类型,精度是6位有效数字,取值范围是10的-38次方到10的38次方,float占用4个字节的存储空间
double是双精度类型,精度是15位有效数字,取值范围是10的-308次方到10的308次方,double占用8个字节的存储空间
当你不声明的时候,默认小数都用double来表示,所以如果要用float的话,则应该在其后加上f
所以你用float就可以了。
数据库是什么数据库来着。
当然,最好的是你用number储存,方便。追问

如果 有个字段 最大可能上千亿 小数点两位 我应该 用float double 还是bigdecimal 呢?

追答

float就可以了,没事

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-08-17
最好定义为float 精度高些(精确到小数点后俩位 float ft =1021.32f;),如果你实体类中定义是数字类型,那么数据库中只能用number
第2个回答  2012-08-21
float够用了
第3个回答  2012-08-17
float更好些吧!
相似回答