java BigInteger 大数运算

java大数运算方便,但是某些时间卡的比较厉害的题会超时23333

将普通数值转换为大数

java.math.BigInteger//大数运算库

BigInteger a=BigInteger.valueOf(/*数字*/);

大数运算 操作

BigInteger abs()  //返回大整数的绝对值
BigInteger add(BigInteger val) //返回两个大整数的和
BigInteger and(BigInteger val)  //返回两个大整数的按位与的结果
BigInteger andNot(BigInteger val) //返回两个大整数与非的结果
BigInteger divide(BigInteger val)  //返回两个大整数的商
double doubleValue()   //返回大整数的double类型的值
float floatValue()   //返回大整数的float类型的值
BigInteger gcd(BigInteger val)  //返回大整数的最大公约数
int intValue()// 返回大整数的整型值
long longValue() //返回大整数的long型值
BigInteger max(BigInteger val)// 返回两个大整数的最大者
BigInteger min(BigInteger val)// 返回两个大整数的最小者
BigInteger mod(BigInteger val) //用当前大整数对val求模
BigInteger multiply(BigInteger val) //返回两个大整数的积
BigInteger negate() //返回当前大整数的相反数
BigInteger not() //返回当前大整数的非
BigInteger or(BigInteger val) //返回两个大整数的按位或
BigInteger pow(int exponent) //返回当前大整数的exponent次方
BigInteger remainder(BigInteger val) //返回当前大整数除以val的余数
BigInteger leftShift(int n) //将当前大整数左移n位后返回
BigInteger rightShift(int n) //将当前大整数右移n位后返回
BigInteger subtract(BigInteger val)//返回两个大整数相减的结果
byte[] toByteArray(BigInteger val)//将大整数转换成二进制反码保存在byte数组中

BigInteger xor(BigInteger val) //返回两个大整数的异或
String toString() //将当前大整数转换成十进制的字符串形式

BigInteger xor(BigInteger val) //返回两个大整数的异或

int a.compareTo(BigInteger b) //比较a,b的大小,如果a大于b则返回1,等于则返回0,小于则返回-1

猜你喜欢

转载自blog.csdn.net/weixin_41058467/article/details/81324578