两个BigDecimal数据类型比较、加减乘除、格式化

来源:互联网 发布:大数据的处理流程包括 编辑:程序博客网 时间:2024/06/08 05:32

一般情况下,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



原创粉丝点击