Java中的 BitSet toByteArray() 方法及示例
Java.util.BitSet.toByteArray() 是 BitSet 类的内置方法,用于生成包含现有 BitSet 的所有位的新字节数组。根据官方文档,此过程按以下方式工作:
if, byte[] bytes = bit_set.toByteArray();
then, bytes.length == (bit_set.length()+7)/8 and,
bit_set.get(n) == ((bytes[n/8] & (1
句法:
Bit_Set.toByteArray()
参数:该方法不带任何参数。
返回值:该方法返回由给定 BitSet 的元素的 ByteArray 表示形式组成的集合。
下面的程序说明了Java.util.BitSet.toByteArray() 方法的工作:
方案一:
// Java code to illustrate toByteArray()
import java.util.*;
public class BitSet_Demo {
public static void main(String args[])
{
// Creating an empty BitSet
BitSet init_bitset = new BitSet();
// Use set() method to add elements into the Set
init_bitset.set(10);
init_bitset.set(20);
init_bitset.set(30);
init_bitset.set(40);
init_bitset.set(50);
// Displaying the BitSet
System.out.println("BitSet: " + init_bitset);
byte[] arr = init_bitset.toByteArray();
System.out.println("The byteArray is: " + arr);
// Displaying the byteArray
System.out.println("The elements in the byteArray :");
for (int i = 0; i < arr.length; i++)
System.out.print(arr[i] + ", ");
}
}
输出:
BitSet: {10, 20, 30, 40, 50}
The byteArray is: [B@232204a1
The elements in the byteArray :
0, 4, 16, 64, 0, 1, 4,
方案二:
// Java code to illustrate toByteArray()
import java.util.*;
public class BitSet_Demo {
public static void main(String args[])
{
// Creating an empty BitSet
BitSet init_bitset = new BitSet();
// Use set() method to add elements into the Set
init_bitset.set(48);
init_bitset.set(64);
init_bitset.set(15);
init_bitset.set(95);
init_bitset.set(105);
init_bitset.set(21);
// Displaying the BitSet
System.out.println("BitSet: " + init_bitset);
byte[] arr = init_bitset.toByteArray();
System.out.println("The byteArray is: " + arr);
// Displaying the byteArray
System.out.println("The elements in the byteArray :");
for (int i = 0; i < arr.length; i++)
System.out.print(arr[i] + ", ");
}
}
输出:
BitSet: {15, 21, 48, 64, 95, 105}
The byteArray is: [B@232204a1
The elements in the byteArray :
0, -128, 32, 0, 0, 0, 1, 0, 1, 0, 0, -128, 0, 2,