一 BigDecimal num = new BigDecimal("2.225667");//一般都会这样写最好 int count = num.scale(); System.out.println(count);//6 返回的是小数点后位数 1. ROUND_DOWN BigDecimal b = new BigDecimal("2.225667").setScale(2, BigDecimal.ROUND_DOWN); System.out.println(
//BigDecimal四舍五入double f1 = new BigDecimal(1).setScale(2,RoundingMode.HALF_UP).doubleValue();//转化成字符串 防止出现0.36 出一堆小数的问题.0.36转BigDecimal时按浮点数,会出现小数BigDecimal testVal = new BigDecimal(f1+""); BigDecimal test = new BigDecimal(0.1);//test=0.10000000
import java.math.BigDecimal; public class TestGetInt { public static void main(String[] args) { double i = 2, j = 2.1, k = 2.5, m = 2.9; System.out.println("舍掉小数取整:Math.floor(2)=" + ( System.out.println("舍掉小数取整:Math.floor(2.1)=" + ( Sy
• Java中的简单浮点数类型float和double不能够进行运算.不光是Java,在其它很多编程语言中也有这样的问题. 如果我们编译运行下面这个程序会看到什么? public class Test { public static void main(String args[]) { System.out.println(0.05 + 0.01); System.out.println(1.0 - 0.42);