大数字运算
Posted duaner92
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大数字运算相关的知识,希望对你有一定的参考价值。
本博客主要讲解
1、BigInteger
2、BigDecimal
在BigInteger类中封装了多种操作,除了基本的加、减、乘、除操作之外,还提供了绝对值、相反数、最大公约数以及判断是否为质数等操作。
当使用BigInteger类时,可以实例化一个BigInteger对象,并自动调用相应的构造函数。BigInteger类具有很多构造函数,但最直接的一种方式是参数以字符串形式代表要处理的数字。
BigDecimal和BigInteger都能实现大数字的运算,不同的是BigDecimal加入了小数的概念。一般的float型和double型数据只可以用来做科学计算或工程计算,但由于在商业计算中要求数字精度比较高,所以要用到java.math.BigDecimal类。BigDecimal类支持任何精度的定点数,可以用它来精确计算货币值。
import java.math.BigInteger; public class test { public static void main(String[] args) { BigInteger bi1=new BigInteger("100"); BigInteger bi2=new BigInteger("2"); System.out.println(bi1.add(bi2)); //+ System.out.println(bi1.subtract(bi2)); //- System.out.println(bi1.multiply(bi2)); //* System.out.println(bi1.divide(bi2)); //(除) BigInteger[] arr=bi1.divideAndRemainder(bi2); //取除数和余数 for(int i=0;i<arr.length;i++){ System.out.println(arr[i]); } } } 输出: 102 98 200 50 50 0
BigDecimal详解参见:https://www.cnblogs.com/LeoBoy/p/6056394.html
以上是关于大数字运算的主要内容,如果未能解决你的问题,请参考以下文章