常用统计算法JAVA实现 - 工具类(01)

常用统计算法JAVA实现 - 工具类(01)Mutil 是一个工具类 后续的文章的统计方法中会用到 import java math BigDecimal 类描述 一个工具类 为了保证计算准确性 将 double 之间的运算转换为 BigDecimal 之间的运算 br

大家好,我是讯享网,很高兴认识大家。

Mutil是一个工具类,  后续的文章的统计方法中会用到;


讯享网

 import java.math.BigDecimal; / *  * @类描述: 一个工具类,为了保证计算准确性,将double之间的运算转换为BigDecimal之间的运算 <br/>  * @项目名称:Statistics <br/>  * @包名: descrptive <br/>  * @类名称:Mutil <br/>  * @创建人:micheal <br/>  * @创建时间:2019年1月15日下午3:09:45 <br/>  * @修改人:micheal <br/>  * @修改时间:2019年1月15日下午3:09:45 <br/>  * @修改备注: <br/>  * @version v1.0 <br/>  * @see  <br/>  * @bug  <br/>  * @Copyright  <br/>  * @mail    */ public class Mutil { / * *  * @描述: 加法 <br/> *  * @方法名: add <br/> *  * @param v1 <br/> *  * @param v2 <br/> *  * @return <br/> *  * @返回类型 double <br/> *  * @创建人 micheal <br/> *  * @创建时间 2019年1月5日下午9:37:50 <br/> *  * @修改人 micheal <br/> *  * @修改时间 2019年1月5日下午9:37:50 <br/> *  * @修改备注 <br/> *  * @since <br/> *  * @throws   */ 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(); } / * *  * @描述: 减法 <br/> *  * @方法名: subtract <br/> *  * @param v1 <br/> *  * @param v2 <br/> *  * @return <br/> *  * @返回类型 double <br/> *  * @创建人 micheal <br/> *  * @创建时间 2019年1月5日下午9:38:16 <br/> *  * @修改人 micheal <br/> *  * @修改时间 2019年1月5日下午9:38:16 <br/> *  * @修改备注 <br/> *  * @since <br/> *  * @throws   */ public static double subtract(double v1, double v2) { BigDecimal b1 = new BigDecimal(Double.toString(v1)); BigDecimal b2 = new BigDecimal(Double.toString(v2)); return b1.subtract(b2).doubleValue(); } / * *  * @描述: 乘法 <br/> *  * @方法名: mul <br/> *  * @param d1 <br/> *  * @param d2 <br/> *  * @return <br/> *  * @返回类型 double <br/> *  * @创建人 micheal <br/> *  * @创建时间 2019年1月5日下午9:38:33 <br/> *  * @修改人 micheal <br/> *  * @修改时间 2019年1月5日下午9:38:33 <br/> *  * @修改备注 <br/> *  * @since <br/> *  * @throws   */ public static double multiply(double d1, double d2) {// 进行乘法运算 BigDecimal b1 = new BigDecimal(d1); BigDecimal b2 = new BigDecimal(d2); return b1.multiply(b2).doubleValue(); } / * *  * @描述: 除法 ,四舍五入<br/> *  * @方法名: div <br/> *  * @param d1 <br/> *  * @param d2 <br/> *  * @param len ,保留的小数位数<br/> *  * @return <br/> *  * @返回类型 double <br/> *  * @创建人 micheal <br/> *  * @创建时间 2019年1月5日下午9:38:59 <br/> *  * @修改人 micheal <br/> *  * @修改时间 2019年1月5日下午9:38:59 <br/> *  * @修改备注 <br/> *  * @since <br/> *  * @throws   */ public static double divide(double d1, double d2, int len) {// 进行除法运算 BigDecimal b1 = new BigDecimal(d1); BigDecimal b2 = new BigDecimal(d2); return b1.divide(b2, len, BigDecimal.ROUND_HALF_UP).doubleValue(); } / *  * @描述: 除法,四舍五入取整数 ,例如:5/2=3(2.5四舍五入); 5/3=2(1.6四舍五入);<br/>  * @方法名: div <br/>  * @param d1 <br/>  * @param d2 <br/>  * @return <br/>  * @返回类型 double <br/>  * @创建人 micheal <br/>  * @创建时间 2019年1月5日下午10:54:51 <br/>  * @修改人 micheal <br/>  * @修改时间 2019年1月5日下午10:54:51 <br/>  * @修改备注 <br/>  * @since <br/>  * @throws <br/>   */ public static double divide(double d1, double d2) {// 进行除法运算 BigDecimal b1 = new BigDecimal(d1); BigDecimal b2 = new BigDecimal(d2); return b1.divide(b2, BigDecimal.ROUND_HALF_UP).doubleValue(); } / * *  * @描述: 四舍五入 <br/> *  * @方法名: round  * @param d <br/> *  * @param len <br/> *  * @return <br/> *  * @返回类型 double <br/> *  * @创建人 micheal <br/> *  * @创建时间 2019年1月5日下午9:39:13 <br/> *  * @修改人 micheal <br/> *  * @修改时间 2019年1月5日下午9:39:13 <br/> *  * @修改备注 <br/> *  * @since <br/> *  * @throws <br/> *   */ public static double round(double d, int len) { BigDecimal b1 = new BigDecimal(d); BigDecimal b2 = new BigDecimal(1); // 任何一个数字除以1都是原数字 // ROUND_HALF_UP是BigDecimal的一个常量,表示进行四舍五入的操作 return b1.divide(b2, len, BigDecimal.ROUND_HALF_UP).doubleValue(); } public static void main(String[] args){ double a = 10; double b = 3; System.out.println(divide(a,b,2)); System.out.println(divide(a,b)); } }

讯享网

 

小讯
上一篇 2025-03-16 14:43
下一篇 2025-02-26 21:37

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/49279.html