【语句总结】大数操作:BigInteger

创建大数

...
BigInteger a=new BigInteger("123456");//参数一定要是字符串
BigInteger a=BigInteger.valueOf(123);//参数可以是int或long,不能是小数
...

大数修改的话,可以重新给a分配新对象空间。

大数赋值

...
BigInteger a=in.nextBigInteger();
...

大数运算

...
a.add(b);//加
a.subtract(b);//减
a.divide(b);//除
a.multiply(b);//乘
a.shiftRight(b)//右移b位
a.shiftLeft(b)//左移b位
...
//当b时负数时,左移的结果是右移-b位,右移的结果是左移-b位

大数比较

...
a.equals(b);//如果a、b相等返回true否则返回false
a.compareTo(b);//a小于b返回-1,等于返回0,大于返回1
...

常用方法(返回值也是大整型)

a.mod(b);//求余,除数不能是负数。无论被除数是不是正数,结果都是正数
a.remainder(b);//求余,除数可以负数。两个操作数只要有一个是负数,结果即为负数
a.gcd(b);//求最大公约数
a.max(b);//求最大值
a.min(b);//求最小值

BigInteger中的常数

...
BigInteger.ZERO//大整数0
BigInteger.ONE//大整数1
BigInteger.TEN//大整数10
...


--------------------- 
作者:董成荣 
来源:CSDN 
原文:https://blog.csdn.net/dongchengrong/article/details/78848399 
版权声明:本文为博主原创文章,转载请附上博文链接! 
备注:只转载了语句部分,未转载例子部分


判断素数

probablePrime和nextprobablePrime。(判断质数,并返回) 

...
BigInteger.probablePrime(int x);
//返回有可能是素数,具有指定长度的正数BigInteger,返回可能是合数的概率不超过2的负100次方, 
...
BigInteger.nextprobablePrime(int x)
//返回一个大于x的整数,这个整数有极大可能是素数,若是素数则是紧接着x的下一个素数,返回可能是合数的概率不超过2的负100次方。
...

但是这个东西的参数x只能是正数。
--------------------- 
作者:吃奶的牛 
来源:CSDN 
原文:https://blog.csdn.net/sinat_34093604/article/details/53763448 
版权声明:本文为博主原创文章,转载请附上博文链接!
备注:只转载了一部分,且有所修改


位运算

...
BigInteger	and(BigInteger val)
//返回值为 (this & val) 

BigInteger	andNot(BigInteger val)
//返回值为 (this & ~val) 

BigInteger	xor(BigInteger val)
//返回值为 (this ^ val)

BigInteger	negate()
//返回值为 (-this) 

BigInteger	not()
//返回值为 (~this) 

BigInteger	or(BigInteger val)
//返回值为 (this | val) 

BigInteger	clearBit(int n)
//返回一个BigInteger,其值等于此BigInteger从右数第n+1位被清零,n=0代表最右一位

BigInteger	flipBit(int n)
//返回一个BigInteger,其值等于此BigInteger从右数第n+1位被翻转,n=0代表最右一位

BigInteger	shiftLeft(int n)
//返回值为 (this << n) 

BigInteger	shiftRight(int n)
//返回值为 (this >> n) 

BigInteger	max(BigInteger val)
//返回此BigInteger和 val 

BigInteger	min(BigInteger val)
//返回此BigInteger和 val
...

自身处理

BigInteger	abs()
//返回一个BigInteger,它的值是此BigInteger的绝对值。

--------------------- 
作者:ws加油你是最胖的 
来源:CSDN 
原文:https://blog.csdn.net/qq_37922457/article/details/79661222 
版权声明:本文为博主原创文章,转载请附上博文链接!

你可能感兴趣的:(【java】数字的操作)