您的位置:首页 > 其它

任意精度整数算法 (BigInteger) 和任意精度小数算法 (BigDecimal)

2017-07-31 12:42 916 查看
在使用BigDecimal类来进行计算的时候,主要分为以下步骤:

用float或者double变量构建BigDecimal对象。

通过调用BigDecimal的加,减,乘,除等相应的方法进行算术运算。

把BigDecimal对象转换成float,double,int等类型。

new BigDecimal(...)填写构造函数的时候,要使用String,而不要使用float或者double,否则同样会引起精度丢失

使用BigDecimal的构造方法或者静态方法的valueOf()方法把基本类型的变量构建成BigDecimal对象。

//float和double类型传入到BigDecimal中传入String类型,建议采用下面这种方式:
BigDecimal b1 = new BigDecimal(Double.toString(0.48));

BigDecimal b2 = BigDecimal.valueOf(0.48);

加减乘除

public BigDecimal add(BigDecimal value);                        //加法
public BigDecimal subtract(BigDecimal value);                   //减法
public BigDecimal multiply(BigDecimal value);                   //乘法
public BigDecimal divide(BigDecimal value);                     //除法

将BigDecimal对象转换成相应的基本数据类型的变量,可以使用floatValue(),doubleValue()等方法。

BigInteger和BigDecimal差不多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: