读书人

java中间float以及double数据类型的掌

发布时间: 2012-12-27 10:17:10 作者: rapoo

java当中float以及double数据类型的掌握

?* java当中默认声明的小数是double类型的;

?* double d=4.0

?* 如果声明:

?* float x = 4.0则会报错,需要如下写法:

?* float x = 4.0f或者float x = (float)4.0

?* 其中4.0f后面的f只是为了区别double,并不代表任何数字上的意义

?*?

?* float 内存分配4个字节,占32位,有效小数位6-7位

?* double 型 内存分配8个字节,有效小数位15位

?

flaot:

       /**        * 提供精确的小数位四舍五入处理。        * @param v 需要四舍五入的数字        * @param scale 小数点后保留几位        * @return 四舍五入后的结果        */        public static double round(double v,int scale) {            if(scale<0){                throw new IllegalArgumentException("The scale must be a positive integer or zero");            }            BigDecimal b = new BigDecimal(Double.toString(v));            BigDecimal one = new BigDecimal("1");            return b.divide(one,scale,BigDecimal.ROUND_HALF_UP).doubleValue();        }
?

读书人网 >编程

热点推荐