Java 加减乘除工具类(解决精度损失问题)
唔,其实里面就是一个工具类,加减乘除、保留两位小数。一共5个方法。。。emmmm.....为啥分这么高呢。因为宝宝想分想疯了。
附代码,有土豪就打赏打赏,没土豪的直接拿去使吧。
package cn.cisdom.base.utils;
import java.math.BigDecimal;
import java.text.DecimalFormat;
public class Calculation {
public static final DecimalFormat df = new DecimalFormat("######0.00");
/**
* @methodName format2point
* @desc 保留两位小数点
* @param value
* @return java.lang.String
* @author xm
* @create 2018/6/7 12:03
**/
public static String format2point(Number value) {
return df.format(value);
}
public static Double add(Number value1, Number value2) {
BigDecimal b1 = new BigDecimal(Double.toString(value1.doubleValue()));
BigDecimal b2 = new BigDecimal(Double.toString(value2.doubleValue()));
return b1.add(b2).doubleValue();
}
/**
* 提供精确的减法运算。
*
* @param value1
* 减数
* @param value2
* 被减数
* @return 两个参数的差
*/
public static Double sub(Number value1, Number value2) {
BigDecimal b1 = new BigDecimal(Double.toString(value1.doubleValue()));
BigDecimal b2 = new BigDecimal(Double.toString(value2.doubleValue()));
return b1.subtract(b2).doubleValue();
}
/**
* 提供精确的乘法运算。
*
* @param value1
* 被乘数
* @param value2
* 乘数
* @return 两个参数的积
*/
public static Double mul(Number value1, Number value2) {
BigDecimal b1 = new BigDecimal(Double.toString(value1.doubleValue()));
BigDecimal b2 = new BigDecimal(Double.toString(value2.doubleValue()));
return b1.multiply(b2).doubleValue();
}
/**
* 提供精确的除法运算。
*
* @param value1
* 除数
* @param value2
* 被除数
* @return 除数/被除数
*/
public static Double div(Number value1, Number value2) {
//MathContext mc = new MathContext(2, RoundingMode.HALF_DOWN);//精度为2,舍入模式为大于0.5进1,否则舍弃
BigDecimal b1 = new BigDecimal(Double.toString(value1.doubleValue()));
BigDecimal b2 = new BigDecimal(Double.toString(value2.doubleValue()));
return b1.divide(b2).doubleValue();
}
public static void main(String[] args) {
Double aDouble=Calculation.add(56.9, 1.67);
System.out.println(aDouble);
Double bDouble=Calculation.sub(99.2,aDouble);
System.out.println(bDouble);
}
}
2018最新版Git+TortoiseGit+中文包
windows 64位平台的可视化git安装包,版本管理的好工具。
资源内容:
1.TortoiseGit-2.4.0.2-64bit
2.TortoiseGit-LanguagePack-2.4.0.0-64bit-zh_CN
3.TortoiseGit-2.6.0.0-64bit
4.TortoiseGit-LanguagePack-2.6.0.0-64bit-zh_CN
5.Git_2.13.2.1
6.Git-2.18.0-64-bit
安装顺序:
1.安装Git-***-64-bit
2.安装TortoiseGit-***-64bit
说明:
为啥有这么多版呢,因为之前自己有保留版本的习惯,昨天从官网下最新版,太难下了,速度超级慢,在此上传供有需要的小伙伴们使用。好久没上传东西了,发现现在至少得设置1个积分了。emmmm...
windows系统TortoiseSVN+Eclipse SVN插件
1.资源内含两个压缩包,一个TortoiseSVN安装包,一个Eclipse SVN插件包
2.TortoiseSVN直接点击安装
3.Eclipse SVN插件安装步骤:
a.解压site-1.8.4压缩包
b.复制文件夹features和plugins到Eclipse根目录(该目录下原本有这两个文件夹,合并即可,如有重名文件选择覆盖)
c.重启Eclipse,查看preference-team ,或者右击项目名,查看team选项
java连接Redis资源包(最新)
这里有redis的windows和 linux版,以及java连接Redis所需jar包