您的位置:首页 > 编程语言 > Java开发

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

2017-08-30 20:59 357 查看
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类可以处理高精度,大数字问题
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: