java中处理高精度大数字的类 BigDecimal, BigInteger

java中处理有些大数字,还有要求高精度时我们使用BigDecimal,BigInteger类比较方便;

看下面这个代码;

package com.处理大精度大数字;


import java.math.BigDecimal;
import java.math.BigInteger;


public class Bignumeber {
public static void main(String[] args) {
System.out.println(0.09 + 0.01);
System.out.println(1.0 - 0.32);
System.out.println(1.015 * 100);
System.out.println(0.09/0.01);

// BigDecimal b1=new BigDecimal("0.09");
// BigDecimal b2=new BigDecimal("0.01");

// BigDecimal b1=new BigDecimal(0.09);
// BigDecimal b2=new BigDecimal(0.01);

BigDecimal b1=BigDecimal.valueOf(0.09);
BigDecimal b2=BigDecimal.valueOf(0.01);


double b4=b1.add(b2).doubleValue();
System.out.println(b4);
BigDecimal b3=b1.add(b2);
System.out.println(b3);
BigDecimal c1=new BigDecimal(1.0);
BigDecimal c2=BigDecimal.valueOf(0.32);
BigDecimal c3=c1.subtract(c2);
System.out.println(c3);

BigDecimal d1=BigDecimal.valueOf(1.015);
BigDecimal d2=BigDecimal.valueOf(100);
BigDecimal d3=d1.multiply(d2);
System.out.println(d3);

BigDecimal f4=b1.divide(b2);
System.out.println(f4);

BigInteger g1=new BigInteger("122223333333332233333333");
BigInteger g2=new BigInteger("112232333333333333434343");
BigInteger g3=g1.add(g2);
BigInteger g4=g1.subtract(g2);
BigInteger g5=g1.multiply(g2);
BigInteger g6=g1.divide(g2);
System.out.println(g3);
System.out.println(g4);
System.out.println(g5);
System.out.println(g6);


}
}

输出结果为:

0.09999999999999999
0.6799999999999999
101.49999999999999
9.0
0.1
0.10
0.68
101.500
9
234455666666665566767676
9990999999998899898990
13717409887777654334556811859222111111588855219
1

使用了了Big类可以处理高精度,大数字问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值