Java BigInteger toByteArray()方法

Java BigInteger toByteArray()方法

java.math.BigInteger.toByteArray() 方法返回一个包含该BigInteger的二进制补数的字节数组。字节数组中最重要的字节出现在第2个元素中。这个方法返回的数组包含符号位,并且包含表示这个大整数所需的最小字节数。符号位的位置是 (ceil((this.bitLength() + 1)/8)) 。

语法 :

public byte[] toByteArray()

参数 :该方法不接受任何参数。

返回值: 该方法返回一个字节数组,包含该大整数的二进制表示。下面的程序说明了BigInteger类的toByteArray()方法:

示例1 :

// Java program to demonstrate toByteArray() method of BigInteger
 
import java.math.BigInteger;
 
public class GFG {
 
    public static void main(String[] args)
    {
 
        // Creating BigInteger object
        BigInteger bigInt = BigInteger.valueOf(10);
 
        // create a byte array
        byte b1[];
        b1 = bigInt.toByteArray();
 
        // print result
        System.out.print("ByteArray of BigInteger "
                         + bigInt + " is");
 
        for (int i = 0; i < b1.length; i++) {
            System.out.format(" "
                                  + "0x%02X",
                              b1[i]);
        }
    }
}

输出

ByteArray of BigInteger 10 is 0x0A

例2 :

// Java program to demonstrate toByteArray() method of BigInteger
 
import java.math.BigInteger;
 
public class GFG {
 
    public static void main(String[] args)
    {
 
        // create byte array
        byte b[] = { 0x1, 0x2, 0x1 };
 
        // Creating BigInteger object using byte Array
        BigInteger bigInt = new BigInteger(b);
 
        // apply toByteArray() on BigInteger
        byte b1[] = bigInt.toByteArray();
 
        // print result
        System.out.print("ByteArray of BigInteger "
                         + bigInt + " is");
 
        for (int i = 0; i < b1.length; i++) {
            System.out.format(" "
                                  + "0x%02X",
                              b1[i]);
        }
    }
}

输出

ByteArray of BigInteger 66049 is 0x01 0x02 0x01

**参考资料: **https://docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html#toByteArray()

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程