关于BigDecimal 的计算
BigDecimal 构造方式主要包括4种:
支持double、int、long等类型计算,废话少说,直接上代码
import java.math.BigDecimal;
public class BigDecimalUtil{
//几种类型的声明
//String
BigDecimal bd1 = new BigDecimal("11111");
//int
BigDecimal bd2 = new BigDecimal(11111);
//long
BigDecimal bd3 = new BigDecimal(11111l);
//double
BigDecimal bd4 = new BigDecimal(11111.00d);
/**
* 加
* @param bd1
* @param bd2
* @return
*/
public BigDecimal add(BigDecimal bd1,BigDecimal bd2){
return bd1.add(bd2);
}
/****
* 减
* @param bd1
* @param bd2
* @return
*/
public BigDecimal subtract(BigDecimal bd1,BigDecimal bd2){
return bd1.subtract(bd2);
}
/***
* 乘
* @param bd1
* @param bd2
* @return
*/
public BigDecimal multiply(BigDecimal bd1,BigDecimal bd2){
return bd1.multiply(bd2);
}
/***
* 除
* @param bd1
* @param bd2
* @return
*/
public BigDecimal divide(BigDecimal bd1,BigDecimal bd2){
return bd1.divide(bd2);
}
public static void main(String args[]){
BigDecimalUtil bdu = new BigDecimalUtil();
System.out.println(bdu.add(bdu.bd1, bdu.bd2));
System.out.println(bdu.subtract(bdu.bd1, bdu.bd2));
System.out.println(bdu.multiply(bdu.bd1, bdu.bd2));
System.out.println(bdu.divide(bdu.bd1, bdu.bd2));
}
}
关于BigDecimal 的计算的更多相关文章
- BigDecimal精确计算工具类
前言 在实际开发中,遇到例如货币,统计等商业计算的时候,一般需要采用java.math.BigDecimal类来进行精确计算.而这类操作通常都是可预知的,也就是通用的.所以,写了个工具类来方便以后的工 ...
- Java使用BigDecimal精确计算的简单公式计算器
由于工作需要,写了一个使用BigDecimal运算的精确计算的计算器(然后发现其实比不用BigDecimal的并好不到哪里去) 只能做加减乘除 double类型的数字在千万级别的时候会转成科学计数法, ...
- BigDecimal精确计算及陷阱
BigDecimal通常在涉及到精确计算的时候会用到,下面是自己多次错误使用BigDecimal的总结. 结论: BigDecimal初始化小数时,尽量用字符串形式,例如new BigDecimal( ...
- BigDecimal加减乘除计算
一.简述 java.math.BigDecimal不可变的.任意精度的有符号十进制数.BigDecimal 由任意精度的整数非标度值(unscaledValue)和32位的整数标度(scale)组成. ...
- 运用BigDecimal精确计算
package com.wzh.test; import java.math.BigDecimal; public class test { /** * @param args */ public s ...
- 货币金额的计算 - Java中的BigDecimal
在<Effective Java>这本书中也提到这个原则,float和double只能用来做科学计算或者是工程计算,在商业计算中我们要用 java.math.BigDecimal.,而且使 ...
- 商业计算中Java高精度计算BigDecimal类
<Effective Java> 第48条:如果需要精确的答案,请避免使用float和double. 如果我们编译运行下面这个程序会看到什么?public class Test{ p ...
- 解决计算精度问题:BigDecimal
BigDecimal类 BigDecimal所在包:java.math,不可变的.任意精度的有符号十进制数.BigDecimal 由任意精度的整数非标度值 和 32 位的整数标度 (scale) 组成 ...
- BigDecimal计算
货币金额的计算 - Java中的BigDecimal 在<Effective Java>这本书中也提到这个原则,float和double只能用来做科学计算或者是工程计算,在商业计算中我 ...
随机推荐
- YTU 3027: 哈夫曼编码
原文链接:https://www.dreamwings.cn/ytu3027/2899.html 3027: 哈夫曼编码 时间限制: 1 Sec 内存限制: 128 MB 提交: 2 解决: 2 ...
- html(二)
1无序列表 ul是没有前后顺序的信息列表. <ul> <li></li> <li></li> ...... </ul> ul在网 ...
- TRUNCATE TABLE (Transact-SQL)
删除表中的所有行,而不记录单个行删除操作. TRUNCATE TABLE 与没有 WHERE 子句的 DELETE 语句类似:但是,TRUNCATE TABLE 速度更快,使用的系统资源和事务日志资源 ...
- js 倒计时(可自定义时间)
<html> <head> <title>js 倒计时</title> </head> <body> <div> & ...
- PHPExcel对于Excel中日期和时间类型的处理
PHPExcel是一款优秀的处理Excel文件读写的开源PHP Library,能够给我们提供强大的Excel读写能力,本文针对Excel处理过程中关于日期和时间类型的处理进行深入的讨论.PHPExc ...
- IE11 iframe alternative
<OBJECT classid=clsid:8856F961-340A-11D0-A96B-00C04FD705A2> <PARAM NAME=Location VALUE=http ...
- 文本数据源Fields Format
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- Mac上配置Privoxy
此文档适用于走Shadowsocks代理,想利用Privoxy将主机作为代理服务器的用户. 0.安装完Privoxy后,打开终端命令. 1.打开Privoxy的配置文件config: cd /usr/ ...
- 执行Hadoop job提示SequenceFile doesn't work with GzipCodec without native-hadoop code的解决过程记录
参照Hadoop.The.Definitive.Guide.4th的例子,执行SortDataPreprocessor作业时失败,输出的错误信息 SequenceFile doesn't work w ...
- web前端图片极限优化策略
随着web的发展,网站资源的流量也变得越来越大.据统计,60%的网站流量均来自网站图片,可见对图片合理优化可以大幅影响网站流量,减小带宽消耗和服务器压力. 一.现有web图片格式 我们先来看下现在常用 ...