BigDecimal有自己的算法函数。
下载整理了一下BigDecimal 的加减乘除。。
[java] view plain copy
- BigDecimal bignum1 = new BigDecimal("10");
- BigDecimal bignum2 = new BigDecimal("5");
- BigDecimal bignum3 = null;
- //加法
- bignum3 = bignum1.add(bignum2);
- System.out.println("和 是:" + bignum3);
- //减法
- bignum3 = bignum1.subtract(bignum2);
- System.out.println("差 是:" + bignum3);
- //乘法
- bignum3 = bignum1.multiply(bignum2);
- System.out.println("积 是:" + bignum3);
- //除法
- bignum3 = bignum1.divide(bignum2);
- System.out.println("商 是:" + bignum3);
运行结果为:
最后整理了一下BigDecimal 的比较大小。
[java] view plain copy
- BigDecimal num1 = new BigDecimal("0");
- BigDecimal num2 = new BigDecimal("1");
- BigDecimal num3 = new BigDecimal("2");
- BigDecimal num = new BigDecimal("1"); //用做比较的值
- System.out.println(num1.compareTo(num)); //小于 时,返回 -1
- System.out.println(num2.compareTo(num)); //等于 时,返回 0
- System.out.println(num3.compareTo(num)); //大于 时,返回 1
这是输出结果:
解释下载注释里面了。
补充:
BigInteger 也可以存放比较大的数, 和 BigDecimal 的区别是 :BigInteger 存放的是大的整数,而BigDecimal 存放大的小数
继续补充一下,用BigDecimal 写个for循环。
[java] view plain copy
- for (BigDecimal i = new BigDecimal("0"); i.compareTo(new BigDecimal("10")) != 1; i = i.add(new BigDecimal("1"))) {
- System.out.print(i + "\t");
- }
控制台打印的是从0 到 10 。
BigDecimal转换:
toString()将BigDecimal对象的数值转换成字符串。
doubleValue()将BigDecimal对象中的值以双精度数返回。
floatValue()将BigDecimal对象中的值以单精度数返回。
longValue()将BigDecimal对象中的值以长整数返回。
intValue()将BigDecimal对象中的值以整数返回。