两个BigDecimal型数据b1,sValue,相除得rate,怎么rate打印出来都是0,1啊?跟真实结果差远了!我要很精确得数据.
BigDecimal rate = null;
rate = b1.divide(sValue, BigDecimal.ROUND_HALF_UP);
System.out.println("rate=" + rate);
BigDecimal rate = null;
rate = b1.divide(sValue, BigDecimal.ROUND_HALF_UP);
System.out.println("rate=" + rate);
下面得结果算出来是rate=-0.2581
但是我用windows计算器算出来是0.2582147838.......
这是为什么???
public static void main(String[] args) {
BigDecimal b1 = new BigDecimal("-555.4200");
BigDecimal sValue = new BigDecimal("2151.5800");
BigDecimal rate = b1.divide(sValue, 4, BigDecimal.ROUND_HALF_UP);
System.out.println("rate=" + rate);
}