BigDecimalDemo 数学相关
```
package 数学相关类;
import java.math.BigDecimal;
public class BigDecimalDemo
{
public static void main(String[] args)
{
// float和double都不能表示精确的小数,此时使用BigDecimal
// TODO Auto-generated method stub
System.out.println("0.09 + 0.01 ="+(0.09+0.01));
System.out.println("1.00 - 0.33 ="+(1.00-0.33));
//
// BigDecimal b1 = new BigDecimal(0.09);
// BigDecimal b2 = new BigDecimal(0.01);
// // 0.1 ?
// System.out.println(b1.add(b2)); 因为在0.09是double类型,创建b1就已经不精确了
BigDecimal b1 = new BigDecimal("0.09");
BigDecimal b2 = new BigDecimal("0.01");
System.out.println(b1.add(b2));
BigDecimal b3 = new BigDecimal("0.0123");
System.out.println(b3.scale());// 4
// 除法
BigDecimal b4 = new BigDecimal("1.");
BigDecimal b5 = new BigDecimal("3.00");
// System.out.println(b4.divide(b5));// 如果是1.0 / 3.0 ,报异常java.lang.ArithmeticException
//divide(b5,有效位数,舍入规则)
System.out.println(b4.divide(b5,5,BigDecimal.ROUND_FLOOR));
// b4.compareTo(b5) 比较 -1(b6b7)
BigDecimal b6 = new BigDecimal("3.14");
BigDecimal b7 = new BigDecimal("3.1450");
System.out.println(b6.compareTo(b7));
System.out.println(b6.equals(b7));
}
}
```