File size: 1,728 Bytes
0284885 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | package BigDecimal_package;
import java.math.BigDecimal;
public class BigDecimal_demo1 {
public static void main(String[] args) {
/*
构造方法获取BigDecimal对象
public BigDecimal (double val)
public BigDecimal (String val)
静态方法获取BigDecimal对象
public static BigDecimal valueOf (double val)
*/
//1、通过传递double类型的小数来创建对象
//细节:
//这种方式有可能是不精确的,所以不建议使用
BigDecimal bd1 = new BigDecimal(0.01);
BigDecimal bd2 = new BigDecimal(0.09);
System.out.println(bd1);
System.out.println(bd2);
//2、通过传递字符串表示的小数来创建对象
BigDecimal bd3 = new BigDecimal("0.01");
BigDecimal bd4 = new BigDecimal("0.09");
BigDecimal bd5 = bd3.add(bd4);
System.out.println(bd3);
System.out.println(bd4);
System.out.println(bd5);
//3、通过静态方法获取对象
BigDecimal bd6 = BigDecimal.valueOf(10);
BigDecimal bd7 = BigDecimal.valueOf(10);
System.out.println(bd6 == bd7);
//细节:
//1、如果要表示的数字不大,没有超出double的取值范围,建议使用静态方法
//2、如果要表示的数字比较大,超出了double的取值范围,建议使用构造方法
//3、如果我们传递的是0~10之间的整数,包含0,包含10,那么方法会返回已经创建好的对象,不会重新new
BigDecimal bd8 = BigDecimal.valueOf(10.0);
BigDecimal bd9 = BigDecimal.valueOf(10.0);
System.out.println(bd8 == bd9);
}
}
|