1、整数之间的除法运算如何保留小数位?
不管小数有多少位,小数具体是多少,统统会舍弃,只返回整数数字!
1 float a =1/3;
2 System.out.println(a);
这样的写法返回结果是0.0,因为1/3运算结果是0,是int类型,这里只是将计算结果由int类型转为float类型。
正确做法:将除数或被除数中的一个转换成float或double类型
2、如何实现精确保留多少位小数?
1)通过BigDecimal类实现:
这里不展开;
2)通过String实现:
示例
1 double a = 3.1415;
2 String aa = String.format("%.2f", a);
3 System.out.println(aa);