算法笔记--java的BigInteger类及BigDecimal类
引包:import java.math.*;
BigInteger类:
可以使用构造方法:public BigInteger(String val),或者valueOf(int)函数,如:
BigInteger a=new BigInteger("123456789123456789123456789"); int b; a = BigInteger.valueOf(b);
也可以直接读入,如:
Scanner reader=new Scanner(System.in); BigInteger a=reader.nextBigInteger();
基本操作:
c = a.add(b);//加 c = a.subtract(b);//减 c = a.multiply(b);//相乘 c = a.divide(b);//相除 c = a.remainder(b);//a对b取余,相当于a%b,等同于a.mod(b) c = a.pow(d);//求a的d次方,d必须是int型 c = a.gcd(b);//求a,b的最大公约数 e = a.equals(b);//判断a,b是否相等,返回boolean型 c = a.abs();//取a的绝对值 d = a.compareTo(b);//比较a和b,返回int型数 a = BigInteger.ONE;//赋值大数1 a = BigInteger.TEN;//赋值大数10 a = BigInteger.ZERO;//赋值大数0
BigDecimal类:参见博客:http://blog.csdn.net/wangjunjun2008/article/details/45559655
http://blog.csdn.net/jackiehff/article/details/8582449
从此不怕高精度