学习小结
15.7.2 大型浮点数操作类型BigDecimal
java.math.BigDecimal类,支持任何精度的定点数,可以用来计算货币值。
方法名称 | 描述 |
---|---|
add(BigDecimal) | BigDecimal对象中的值相加,然后返回这个对象 |
subtract(BigDecimal) | BigDecimal对象中的值相减,然后返回这个对象 |
multiply(BigDecimal) | BigDecimal对象中的值相乘,然后返回这个对象 |
divide(BigDecimal) | BigDecimal对象中的值相除,然后返回这个对象 |
toString() | 将BigDecimal对象的数值转换成字符串 |
doubleValue() | 将BigDecimal对象中的值以双精度数返回 |
floatValue() | 将BigDecimal对象中的值以单精度数返回 |
longValue() | 将BigDecimal对象中的值以长整数返回 |
intValue() | 将BigDecimal对象中的值以整数数返回 |
范例 15-19 BigDecimal的四则运算
package com.Javastudy2;
import java.math.BigDecimal;
/**
* @author Y.W.
* @date 2018年5月19日 下午11:40:23
* @Description TODO BigDecimal的四则运算
*/
public class P405_15_19 {
public static void main(String[] args) {
BigDecimal bigA = new BigDecimal("8793247892437928.2"); // 定义两个大的整数
BigDecimal bigB = new BigDecimal("9202309.6");
System.out.println("加法操作:" + bigA.add(bigB)); // 对两个数进行加法操作
System.out.println("减法操作:" + bigA.subtract(bigB)); // 对两个数进行减法操作
System.out.println("乘法操作:" + bigA.multiply(bigB)); // 对两个数进行乘法操作
System.out.println("除法操作:" + bigA.divide(bigB, BigDecimal.ROUND_DOWN)); // 对两个数进行除法操作,ROUND_DOWN表示舍弃一位
System.out.println("进一法保留一位小数:" + bigA.multiply(bigB).setScale(1, BigDecimal.ROUND_UP)); // ROUND_UP表示进一位
}
}
运行结果:
思考
BigDecimal类的数字精度比较高。
记于2018-5-20 00:00:15
By Yvan