package com.llb.bigDecimal;
import java.math.BigDecimal;
public class MyBigDecimal {
public static void main(String[] args) {
/**
* 十进制 -> 二进制计算 -> 十进制
*/
System.out.println(10.0/3.0);
/**
* 构造方法
*/
BigDecimal b1 = new BigDecimal(10.01);
BigDecimal b2 = new BigDecimal("11.666");
System.out.println(b1+"\n"+b2);
/**
* 四则运算
* 如果想进行精确运算,用字符串的构造方法
*/
BigDecimal num1 = new BigDecimal("0.1");
BigDecimal num2 = new BigDecimal("0.2");
//加法 add()
System.out.println("加法 : "+num1.add(num2));
//减法 subtract()
System.out.println("减法 : "+num1.subtract(num2));
//乘法 multiply()
System.out.println("乘法 : "+num1.multiply(num2));
//除法 divide()
System.out.println("除法 : "+num1.divide(num2));
//除不尽的情况使用三个参数的 divide(参与运算的另一个对象,精确到小数点后位数,舍入模式)
//ROUND_UP 进一法
//ROUND_FLOOR 去尾法
//ROUND_HALF_UP 四舍五入
BigDecimal num3 = new BigDecimal("10.0");
BigDecimal num4 = new BigDecimal("3.0");
System.out.println("除法 进一法 : "+num3.divide(num4,//参与运算的另一个参数
5,//精确到小数点后多少位
BigDecimal.ROUND_UP));//舍入模式
System.out.println("除法 去尾法 : "+num3.divide(num4,//参与运算的另一个参数
5,//精确到小数点后多少位
BigDecimal.ROUND_FLOOR));//去尾法
System.out.println("除法 四舍五入 : "+num3.divide(num4,//参与运算的另一个参数
5,//精确到小数点后多少位
BigDecimal.ROUND_HALF_UP));//四舍五入
}
}
BigDecimal
最新推荐文章于 2022-07-27 16:33:26 发布