double计算公式double数四舍五入保留scale位数小数
/**
* 保留小数位dbValue是需要处理的源数据 scale是为保留小数的精度 roundingMode 保留小数位的方式
* @param dbValue
* @param scale
* @param roundingMode
* @return
*/
public static Double reservedDecimalPlaces(Double dbValue, int scale, int roundingMode){
BigDecimal bgl = BigDecimal.ZERO;
if(null != dbValue){// BigDecimal.ROUND_HALF_UP
bgl = BigDecimal.valueOf(dbValue).setScale(scale, roundingMode);
}
return bgl.doubleValue();
}
/**
* double数四舍五入 ,保留scale位数小数
* @param v
* @param scale
* @return
*/
public static double round(double v, int scale) {
if (scale < 0) {
throw new IllegalArgumentException("The scale must be a positive integer or zero");
}
BigDecimal b = new BigDecimal(Double.toString(v));
BigDecimal one = new BigDecimal("1");
return b.pide(one, scale, BigDecimal.ROUND_HALF_UP).doubleValue();
}
/**
* * 两个Double数相乘
*
* @param v1 *
* @param v2 *
* @return Double
*/
public static double mul(double v1, double v2) {
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.multiply(b2).doubleValue();
}
/**
* * 两个Double数相乘 ,保留两位小数
*
* @param v1 *
* @param v2 *
* @return Double
*/
public static double mulWithDefaultScale(double v1, double v2) {
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
double result = b1.multiply(b2).doubleValue();
return round(result, 2) ;
}
/**
* * 两个Double数相加
*
* @param v1 *
* @param v2 *
* @return Double
*/
public static double add(double v1, double v2) {
BigDecimal b1 = new BigDecimal(Double.toString(v1));
BigDecimal b2 = new BigDecimal(Double.toString(v2));
return b1.add(b2).doubleValue();
}
/**
* * 两个Double数相减 *
*
* @param v1 *
* @param v2 *
* @return Double
*/
public static Double sub(Double v1, Double v2) {
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return new Double(b1.subtract(b2).doubleValue());
}
/**
* * 两个Double数相除 *
*
* @param v1 *
* @param v2 *
* @return Double
*/
public static Double p(Double v1, Double v2) {
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
int DEF_DIV_SCALE = 2;
return new Double(b1.pide(b2, DEF_DIV_SCALE, BigDecimal.ROUND_HALF_UP)
.doubleValue());
}
/**
* * 两个Double数相除,并保留scale位小数 *
*
* @param v1 *
* @param v2 *
* @param scale *
* @return Double
*/
public static Double p(Double v1, Double v2, int scale) {
if (scale < 0) {
throw new IllegalArgumentException(
"The scale must be a positive integer or zero");
}
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return new Double(b1.pide(b2, scale, BigDecimal.ROUND_HALF_UP).doubleValue());
}
/**
* * 两个Float数相除,并保留scale位小数 *
*
* @param v1 *
* @param v2 *
* @param scale *
* @return Float
*/
public static Float p(Float v1, Float v2, int scale) {
if (scale < 0) {
throw new IllegalArgumentException(
"The scale must be a positive integer or zero");
}
BigDecimal b1 = new BigDecimal(v1.toString());
BigDecimal b2 = new BigDecimal(v2.toString());
return new Float(b1.pide(b2, scale, BigDecimal.ROUND_HALF_UP).floatValue());
}
白发太多,不想染发怎么办?我们单位就有几个女同事在很年轻的时候就有白发,说是家族遗传的。她们都染了十几年的头发。我还在纳闷她们的身体为啥还挺健康的,是不是染头发对她们没有什么害处?前几年染发的其中一个同事就
虾系男星,去头可食虾系男星,去头可食!才华横溢的网友近期造了一个新词虾系男星,顾明思议,像吃虾一样,去头可食用。首先第一位,大家一起来猜猜他是谁?八头身,身穿驼色风衣,蓝色牛仔裤,亮亮的皮鞋和上班族
传奇曾经都有哪些厉害的辅助器,各有什么作用早期传奇刚开服那会并没有辅助器一说,也是后来慢慢地才开始出现,紧接着有越来越多的人使用传奇辅助。当时很多玩家都发现,明明是个等级装备不怎么样的职业,为什么能够爆发出如此强大的伤害值
解溪穴在临床中的作用有哪些?看完这2点,让你对它更了解我们老祖先留下的针灸和中医药,对于缓解疾病延长人体寿命,都有非常大的帮助。而常见的针灸在缓解许多疾病上,更可以说能够起到针到病除的效果。以解溪穴为例,解溪穴在临床上也是非常常用的,
高血压,就是肝肾不好了!我用25天调理法告诉你,没那么难治故叶天士在临证指南医案中说奇经之脉,隶于肝肾为多。后来吴鞠通也说盖八脉隶于肝肾,如树木之有本也。强调了肝肾与经脉的关系及其在人体的重要作用。对于高血压的这种病来说,有80的朋友,其
智能手机离不开陀螺仪,什么是陀螺仪?它是怎么发挥作用的?将一个陀螺放置在桌面上,它会向一个方向倾倒,但如果将其旋转起来,它便能够稳稳地立在桌子上,只要旋转不止,它就不会倾倒。一个旋转着的陀螺的稳定性与这个陀螺的转速有着直接的关系,转速越
2022最火爆的千人同屏手游它来了远征2以战为名火爆来袭!它首次在MMO游戏中引入大陆漂移合纵跨服国家结盟国战赛季等全新玩法。同时6大职业可自由转职,通过技能与天赋的自由搭配,给玩家带来超过500种成长选择,游戏体
仙剑客栈2日志指引日志指引中一共包含了三项内容,客栈升级日志以及任务。升级客栈升级就是达成页面中要求的几项指标。其中客栈星等一般通过经营后的评价来提升。菜式的星级可以通过厨房修炼提升。铜钱主要是经营
春困秋乏,建议大家多吃5种高钾菜,精神充沛,身体健康俗话说春困秋乏,夏打盹,进入秋季之后,昼夜时长发生了变化,而且人体的新陈代谢比起夏天,变得慢了一些,大脑供氧跟不上,这时候就会经常出现乏困的表现。为了改善秋乏的现象,饮食上需要多补
肚子一饿就心慌手抖?别大意了,可能是有这4大问题心慌手抖作为多种类型疾病会有的症状,一旦自己也有,应该尽早找出原因,并通过正确治疗来改善。而有的人饥饿状态下心慌手抖等表现更明显,单纯认为是饥饿而补充能量,没有去找出根本原因。其实
一吃就胀,不吃就饿,胃强脾弱该怎么调理?来听中医的建议中医认为,脾胃主管着人体饮食物的消化与吸收,是维持人体功能活动的重要器官。脾,为脏胃为腑,它们俩属于一对互为表里的脏腑,脾胃五行中同属于土,脾属于阴土,胃属于阳土,两者一脏一腑一阴