A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

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);

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马