BigDecimal精确计算
来源:互联网 发布:淘宝虚假交易警告2次 编辑:程序博客网 时间:2024/05/17 08:56
import java.math.BigDecimal;public class Test {public static void main(String[] args) {BigDecimal bd1=new BigDecimal("0.1");BigDecimal bd2=new BigDecimal("0.3");BigDecimal add = bd1.add(bd2);//加System.out.println(add.setScale(12, BigDecimal.ROUND_HALF_UP).toString());//结果四舍五入保留12位小数BigDecimal subtract = bd1.subtract(bd2);//减System.out.println(subtract.setScale(12, BigDecimal.ROUND_HALF_UP).toString());//结果四舍五入保留12位小数BigDecimal multiply = bd1.multiply(bd2);//乘System.out.println(multiply.setScale(12, BigDecimal.ROUND_HALF_UP).toString());//结果四舍五入保留12位小数System.out.println(bd1.divide(bd2,12, BigDecimal.ROUND_HALF_DOWN).toString());//除,第一个参数除数,第二个参数保留12位小数,第三个参数四舍五入System.out.println(bd1.compareTo(new BigDecimal("0.11")));//0 相等,1 前面的大,-1 后面的大}}
关于舍入说明:ROUND_HALF_UP 四舍五入,1.5 --》2
ROUND_UP 向上取整,1.1--》2
ROUND_DOWN 向下取整 1.9--》1
----------------------------------------------------------------------------------
初始化 和 常用方法
BigDecimal b1 = new BigDecimal(0);
BigDecimal b2=new BigDecimal(0d);
BigDecimal b3=new BigDecimal("0");
BigDecimal zero = BigDecimal.ZERO;
- add(BigDecimal) BigDecimal对象中的值相加,然后返回这个对象。
- subtract(BigDecimal) BigDecimal对象中的值相减,然后返回这个对象。
- multiply(BigDecimal) BigDecimal对象中的值相乘,然后返回这个对象。
- divide(BigDecimal) BigDecimal对象中的值相除,然后返回这个对象。
- toString() 将BigDecimal对象的数值转换成字符串。
- doubleValue() 将BigDecimal对象中的值以双精度数返回。
- floatValue() 将BigDecimal对象中的值以单精度数返回。
- longValue() 将BigDecimal对象中的值以长整数返回。
- intValue() 将BigDecimal对象中的值以整数返回。
- public static void main(String[] args) {
- NumberFormat currency = NumberFormat.getCurrencyInstance(); //建立货币格式化引用
- NumberFormat percent = NumberFormat.getPercentInstance(); //建立百分比格式化引用
- percent.setMaximumFractionDigits(3); //百分比小数点最多3位
- BigDecimal loanAmount = new BigDecimal("15000.48"); //贷款金额
- BigDecimal interestRate = new BigDecimal("0.008"); //利率
- BigDecimal interest = loanAmount.multiply(interestRate); //相乘
- System.out.println("贷款金额:\t" + currency.format(loanAmount));
- System.out.println("利率:\t" + percent.format(interestRate));
- System.out.println("利息:\t" + currency.format(interest));
- }
阅读全文
0 0
- 运用BigDecimal精确计算
- 精确计算和BigDecimal
- 运用BigDecimal精确计算
- BigDecimal 精确计算
- BigDecimal精确计算
- 精确计算BigDecimal
- 精确计算_double,BigDecimal
- BigDecimal的精确计算
- BigDecimal精确计算
- 精确计算加减乘除--BigDecimal
- 精确的浮点计算-BigDecimal
- BigDecimal 执行精确小数计算
- 精确的数值计算BigDecimal
- Java精确计算:BigDecimal类
- BigDecimal处理精确计算问题
- 13. 精确计算使用BigDecimal
- BigDecimal商品计算 精确处理
- 精确计算的一个类用BigDecimal
- MyBatis 拦截器(4)
- 键盘钩子
- 两数组的交 II
- hunnu11460—区间求最值(线段树模板)
- java数组创建的三种方式
- BigDecimal精确计算
- Linux IO Scheduler -- Deadline
- 一起Talk Android吧(第二十八回:Android版Hello World)
- 极密宝、Lastpass、1password密码管理软件到底哪家强?
- 我遇到的异常及解决办法汇总
- C++笔试概念部分1
- ElasticSearch基础知识--检索文档
- 排序升序降序样式+传值
- 关于定义引用数组