項目中涉及到了BigDecimal的加、減、乘、比較大小、精確度的問題。所以在此總結一下,方便以后復習。
1 //加法 2 3 BigDecimal coins = new BigDecimal("0"); 4 5 BigDecimal one = new BigDecimal("1"); 6 7 BigDecimal two = new BigDecimal("2"); 8 9 coins = coins.add( two ); //coins 加 2 10 System.out.println( coins.doubleValue()); //輸出為2.0 11 12 coins = coins.subtract( one ); //coins 減 1 13 System.out.println( coins.doubleValue()); //輸出為1.0 14 15 coins = coins.subtract( two ); //coins 乘以 2 16 System.out.println( coins.doubleValue()); //輸出為2.0 17 18 int i = coins .compareTo(BigDecimal.ZERO) ; //判斷coins是否大於0 19 int k = coins .compareTo( one ) ;//如果 i =0 說明相等;i < 0 說明 coins小於 one; i > 0 說明coins > one 20 coins = coins.setScale(2,BigDecimal.ROUND_HALF_UP) //保存兩位小數點
1,java代碼去除BigDecimal多余的零
private BigDecimal vipPrice;
String price = vipPrice.stripTrailingZeros().toPlainString();
2,Mybaties 查詢myslq中decimal時,去除多余的零
select 0 + CAST(good.vipPrice AS CHAR) AS vipPrice
from table;