今天code发现一个问题,本来已经精确到小数点后两位的float类型的数据(12.08),经过为opensearch build索引后,取回来的数据精度增多了,如12.08000。而页面显示的为小数点精确到后两位的数据,当然进行数据截取的方式很多。
感觉有一种方式:借助类型转换,来处理更方便
方式一:
(int)(12.08000*100)/100.0
方式二:
offerInfoModel.setProductPrice(BigDecimal.valueOf(o.getPrice()).setScale(2, BigDecimal.ROUND_DOWN).floatValue());