double,失去精度
2024-10-14 06:12:12
double,失去精度:
amount.doubleValue() *
使用 BigDecimal:
public static double add(double d1,double d2){
BigDecimal b1=new BigDecimal(Double.toString(d1));
BigDecimal b2=new BigDecimal(Double.toString(d2));
return b1.add(b2).doubleValue();
} public static double sub(double d1,double d2){
BigDecimal b1=new BigDecimal(Double.toString(d1));
BigDecimal b2=new BigDecimal(Double.toString(d2));
return b1.subtract(b2).doubleValue();
} public static double mul(double d1,double d2){
BigDecimal b1=new BigDecimal(Double.toString(d1));
BigDecimal b2=new BigDecimal(Double.toString(d2));
return b1.multiply(b2).doubleValue();
} public static double div(double d1,double d2){ return div(d1,d2,DEF_DIV_SCALE);
} public static double div(double d1,double d2,int scale){
if(scale<){
throw new IllegalArgumentException("The scale must be a positive integer or zero");
}
BigDecimal b1=new BigDecimal(Double.toString(d1));
BigDecimal b2=new BigDecimal(Double.toString(d2));
return b1.divide(b2,scale,BigDecimal.ROUND_HALF_UP).doubleValue();
}
最新文章
- rdlc报表相关
- python IOError: [Errno 0] Error
- java.lang.IllegalStateException: Recursive entry to executePendingTransactions
- PHP 类型判断和NULL,空值检查
- Linux Linux程序练习十四(多进程压力测试)
- hdu1212(大数取模)
- 序号自增key的使用
- 【转】oracle 针对中文字段进行排序
- a标签中的href=";#";与href=";javascript:void(0)";区别
- 久未更 ~ 五之 —— 引入外部CSS样式表 小节
- bzoj3437小P的牧场 斜率优化dp
- 02.Numpy
- 微信小程序区分点击,长按事件
- pygame 笔记-9 图片旋转及边界反弹
- CRM lookup筛选
- SqlDataAdapter简单介绍 (转)
- centos安装Django之三:安装python
- 【Android】RxJava的使用(四)线程控制 —— Scheduler
- JSTL、EL的一些实践记录
- [MongoDB] 机器换IP之后的设置