java.math.BigInteger.toByteArray()%uA0返回一个包含此BigInteger的二进制补码表示的字节数组。字节数组将在big-endian字节顺序:最显著字节在第零个元素。
该数组将包含最小数目来表示此BigInteger所需的字节,其中至少有一个符号位,如(ceil((this.bitLength() + 1)/8))。这表示是与%uA0(byte[ ])%uA0构造兼容。
声明
以下是java.math.BigInteger.toByteArray()方法的声明
public byte[] toByteArray()
参数
-
NA
返回值
这个方法返回一个包含此BigInteger的二进制补码表示的字节数组。
异常
-
NA
例子
下面的例子显示math.BigInteger.toByteArray()方法的用法
package com.yiibai import java.math.* public class BigIntegerDemo { public static void main(String[] args) { // create 2 BigInteger objects BigInteger bi1, bi2 // create 2 byte arrays byte b1[], b2[] // create and assign value to byte array b3 byte b3[] = { 0x1, 0x00, 0x00 } bi1 = new BigInteger("10") bi2 = new BigInteger(b3) // using byte[] constructor of BigInteger // assign byte array representation of bi1, bi2 to b1, b2 b1 = bi1.toByteArray() b2 = bi2.toByteArray() String str1 = "Byte array representation of " + bi1 + " is: " System.out.println( str1 ) // print byte array b1 using for loop for (int i=0 i < b1.length i++) { System.out.format("0xX ", b1[i]) } String str2 = "Byte array representation of " + bi2 + " is: " System.out.println( str2 ) // print byte array b2 using for loop for (int j=0 j < b2.length j++) { System.out.format("0xX ", b2[j]) } } }
让我们编译和运行上面的程序,这将产生以下结果:
Byte array representation of 10 is: 0x0A Byte array representation of 65536 is: 0x01 0x00 0x00