兩個BigDecimal資料型別比較、加減乘除、格式化
阿新 • • 發佈:2019-01-07
一般情況下,string型別比較用equals,int用=
而BigDecimal需要用compareTo
if(goodsData.unitPrice.compareTo(new BigDecimal("0.00"))==0){
etGoodsPrice.setText("");
}else{
etGoodsPrice.setText(String.valueOf(goodsData.unitPrice));
}
上面的程式碼就是兩個BigDecimal資料型別的值進行比較
new BigDecimal("0.00")是確定資料格式,兩位小數
==0,文件中也有介紹,0表示相等,-1表示小於,1表示大於
加減乘除:
BigDecimal b=new BigDecimal(100);
假設一個int值:int c=5; 如果是BigDecimal型別的就不用轉換
1.加
b.add(BigDecimal.valueOf(c));
2.減
b.subtract(BigDecimal.valueOf(c));
3.乘
b.multiply(BigDecimal.valueOf(c));
4.除
b.divide(BigDecimal.valueOf(c));
格式化:
.setScale(2) 保留兩位小數,預設四捨五入, 1.235》1.24
.setScale(2,BigDecimal.ROUND_DOWN) 直接刪除兩位小數後面的小數, 1.235》1.23
.setScale(2,BigDecimal.ROUND_HALF_UP) 四捨五入,向上取, 1.235》1.24
.setScale(2,BigDecimal.ROUND_HALF_DOWN) 四捨五入,向下取, 1.235》1.23