之前把double類(lèi)型數(shù)據(jù)轉(zhuǎn)成BigDecimal類(lèi)型數(shù)據(jù)式矫,直接使用new BigDecimal()乡摹,結(jié)果導(dǎo)致轉(zhuǎn)換后的數(shù)值變大。如要將double轉(zhuǎn)BigDecimal采转,使用BigDecimal.valueOf()方法聪廉。
public class TestB {
public static void main(String[] args) {
double a = -0.0025;
BigDecimal b1 = new BigDecimal(a);
BigDecimal b2 = BigDecimal.valueOf(a);
BigDecimal b3 = new BigDecimal("-0.0025");
System.out.println(b1);//結(jié)果為 -0.0025000000000000000520417042793042128323577344417572021484375
System.out.println(b2);//結(jié)果為 -0.0025
System.out.println(b3);//結(jié)果為 -0.0025
System.out.println(b1.compareTo(b2));//結(jié)果為 -1
System.out.println(b1.compareTo(b3));//結(jié)果為 -1
System.out.println(b2.compareTo(b3));//結(jié)果為 0
}
}