购物车价格计算工具类
来源:互联网 发布:服装吊牌制作软件 编辑:程序博客网 时间:2024/04/20 02:44
package com.wen.utils;
import java.math.BigDecimal;
import java.util.List;
/**
* Author:wen
* E-mail:1403363118@qq.com
* Time:2017/10/20
* Description:
*/
public class ArithUtils {
/**
* 提供精确加法计算的add方法
*
* @param value1 被加数
* @param value2 加数
* @return 两个参数的和
*/
public static double add(double value1, double value2) {
BigDecimal b1 = new BigDecimal(Double.toString(value1));
BigDecimal b2 = new BigDecimal(Double.toString(value2));
return b1.add(b2).doubleValue();
}
/**
* 累加方法
*
* @param values 值几何
* @return 累加的和
*/
public static double add(List<Double> values) {
double sum = 0;
for (int i = 0; i < values.size(); i++) {
double value = values.get(i);
BigDecimal b1 = new BigDecimal(Double.toString(sum));
BigDecimal b2 = new BigDecimal(Double.toString(value));
sum = b1.add(b2).doubleValue();
}
return sum;
}
/**
* 提供精确减法运算的sub方法
*
* @param value1 被减数
* @param value2 减数
* @return 两个参数的差
*/
public static double sub(double value1, double value2) {
BigDecimal b1 = new BigDecimal(Double.toString(value1));
BigDecimal b2 = new BigDecimal(Double.toString(value2));
return b1.subtract(b2).doubleValue();
}
/**
* 提供精确乘法运算的mul方法
*
* @param value1 被乘数
* @param value2 乘数
* @return 两个参数的积
*/
public static double mul(double value1, double value2) {
BigDecimal b1 = new BigDecimal(Double.toString(value1));
BigDecimal b2 = new BigDecimal(Double.toString(value2));
return b1.multiply(b2).doubleValue();
}
/**
* 提供精确的除法运算方法div
*
* @param value1 被除数
* @param value2 除数
* @param scale 精确范围
* @return 两个参数的商
* @throws IllegalAccessException
*/
public static double div(double value1, double value2, int scale) throws IllegalAccessException {
//如果精确范围小于0,抛出异常信息
if (scale < 0) {
throw new IllegalAccessException("精确度不能小于0");
}
BigDecimal b1 = new BigDecimal(Double.toString(value1));
BigDecimal b2 = new BigDecimal(Double.toString(value2));
return b1.divide(b2, scale).doubleValue();
}
}
import java.math.BigDecimal;
import java.util.List;
/**
* Author:wen
* E-mail:1403363118@qq.com
* Time:2017/10/20
* Description:
*/
public class ArithUtils {
/**
* 提供精确加法计算的add方法
*
* @param value1 被加数
* @param value2 加数
* @return 两个参数的和
*/
public static double add(double value1, double value2) {
BigDecimal b1 = new BigDecimal(Double.toString(value1));
BigDecimal b2 = new BigDecimal(Double.toString(value2));
return b1.add(b2).doubleValue();
}
/**
* 累加方法
*
* @param values 值几何
* @return 累加的和
*/
public static double add(List<Double> values) {
double sum = 0;
for (int i = 0; i < values.size(); i++) {
double value = values.get(i);
BigDecimal b1 = new BigDecimal(Double.toString(sum));
BigDecimal b2 = new BigDecimal(Double.toString(value));
sum = b1.add(b2).doubleValue();
}
return sum;
}
/**
* 提供精确减法运算的sub方法
*
* @param value1 被减数
* @param value2 减数
* @return 两个参数的差
*/
public static double sub(double value1, double value2) {
BigDecimal b1 = new BigDecimal(Double.toString(value1));
BigDecimal b2 = new BigDecimal(Double.toString(value2));
return b1.subtract(b2).doubleValue();
}
/**
* 提供精确乘法运算的mul方法
*
* @param value1 被乘数
* @param value2 乘数
* @return 两个参数的积
*/
public static double mul(double value1, double value2) {
BigDecimal b1 = new BigDecimal(Double.toString(value1));
BigDecimal b2 = new BigDecimal(Double.toString(value2));
return b1.multiply(b2).doubleValue();
}
/**
* 提供精确的除法运算方法div
*
* @param value1 被除数
* @param value2 除数
* @param scale 精确范围
* @return 两个参数的商
* @throws IllegalAccessException
*/
public static double div(double value1, double value2, int scale) throws IllegalAccessException {
//如果精确范围小于0,抛出异常信息
if (scale < 0) {
throw new IllegalAccessException("精确度不能小于0");
}
BigDecimal b1 = new BigDecimal(Double.toString(value1));
BigDecimal b2 = new BigDecimal(Double.toString(value2));
return b1.divide(b2, scale).doubleValue();
}
}
阅读全文
0 0
- 购物车价格计算工具类
- js购物车价格计算
- AngularJs购物车价格计算
- jquery 无刷新添加/删除 input行 实时计算购物车价格
- jquery 无刷新添加/删除 input行 实时计算购物车价格
- 组合模式设计购物车价格计算实例(仅供学习使用)
- 淘宝京东购物车价格计算,商品店铺联动js
- 购物车商品价格计算
- 时间计算工具类
- Java计算工具类
- 价格计算工具类
- 计算工具类
- 计算工具类
- 时间计算工具类
- 类名:Pay (购物管理系统,实现结账计算,打印购物小票,计算积分功能)8
- android 添加商品到购物车简单动画工具类
- 平衡车价格战升温 坚守品质才能走得更远
- 宝马共享汽车正式落地中国,每分钟租车价格2元
- 小朋友学C语言(30):局部变量和全局变量
- Ubuntu下添加nodejs环境变量+ yo 不是有效的命令(yeoman)
- $ git push -u origin master ssh_exchange_identification: read: Software caused ....
- latex 模板下载开源网址
- 剑指offer 38 数字在排序数组中出现的次数
- 购物车价格计算工具类
- php 小菜鸟准备写博客了
- 2017.10.24 測試總結并今日總結
- so文件和ndk
- 成员变量和局部变量的区别
- 编程题2
- Android Camera2.0 API实现摄像头预览并获取人脸关键坐标
- JAVA案例练习 -特定日期格式
- 使用redis生成全局唯一id