BigInteger integer = new BigInteger("12");
// gcd(BigInteger val)
// 返回一个 BigInteger,其值是 abs(this) 和 abs(val) 的最大公约数
BigInteger gcd = integer.gcd(new BigInteger("20"));
System.out.println(gcd);
// intValue()
// 将此 BigInteger 转换为 int。
int i = integer.intValue();
System.out.println(i);
// shiftLeft(int n) 乘以2
// 返回其值为 (this << n) 的 BigInteger。
BigInteger left = integer.shiftLeft(1);
System.out.println(left.intValue());
// shiftRight(int n) 除以2
// 返回其值为 (this >> n) 的 BigInteger
BigInteger right = integer.shiftRight(1);
System.out.println(right.intValue());
// toByteArray()
// 返回一个 byte 数组,该数组包含此 BigInteger 的二进制补码表示形式。
byte[] bytes = integer.toByteArray();
System.out.println(Arrays.toString(bytes));
// xor(BigInteger val)
// 返回其值为 (this ^ val) 的 BigInteger。 12 ^ 123 ^ 123 = 12
BigInteger xor = integer.xor(BigInteger.valueOf(123));
BigInteger bigInteger = xor.xor(BigInteger.valueOf(123));
System.out.println(xor);
System.out.println(bigInteger);
// valueOf(long val)
// 返回其值等于指定 long 的值的 BigInteger
BigInteger valueOf = BigInteger.valueOf(123456678);
System.out.println(valueOf); |
|