Java.math.BigInteger.toByteArray()方法實例
java.math.BigInteger.toByteArray() 返回一個包含此BigInteger的二進製補碼表示的字節數組。字節數組將在big-endian字節順序:最顯著字節在第零個元素。
該數組將包含最小數目來表示此BigInteger所需的字節,其中至少有一個符號位,如(ceil((this.bitLength() + 1)/8))。這表示是與 (byte[ ]) 構造兼容。
聲明
以下是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("0x%02X ", 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("0x%02X ", b2[j]); } } }
讓我們編譯和運行上麵的程序,這將產生以下結果:
Byte array representation of 10 is: 0x0A Byte array representation of 65536 is: 0x01 0x00 0x00