Java BitSet toLongArray()方法及示例
java.util.BitSet.toLongArray()是BitSet类的一个内置方法,用于生成一个新的长数组,包含现有BitSet的所有位。根据官方文档,这个过程的工作方式如下。
如果,long[] longs = bit_set.toLongArray();
那么,longs.length == (bit_set.length()+63)/64
并且,
bit_set.get(n) == ((longs[n/64] & (1L<<(n%64))) != 0) for all n < 64 * longs.length
语法
Bit_Set.toLongArray()
参数: 该方法不接受任何参数。
返回值: 该方法返回由给定BitSet元素的LongArray表示组成的集合。
下面的程序说明了java.util.BitSet.toLongArray()方法的工作:
程序1 :
// Java code to illustrate toLongArray()
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);
long[] arr = init_bitset.toLongArray();
System.out.println("The LongArray is: " + arr);
// Displaying the byteArray
System.out.println("The elements in the LongArray:");
for (int i = 0; i < arr.length; i++)
System.out.print(arr[i] + ", ");
}
}
输出:
BitSet: {10, 20, 30, 40, 50}
The LongArray is: [J@232204a1
The elements in the LongArray:
1127000493261824,
程序2
// Java code to illustrate toLongArray()
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);
long[] arr = init_bitset.toLongArray();
System.out.println("The LongArray is: " + arr);
// Displaying the byteArray
System.out.println("The elements in the LongArray:");
for (int i = 0; i < arr.length; i++)
System.out.print(arr[i] + ", ");
}
}
输出:
BitSet: {15, 21, 48, 64, 95, 105}
The LongArray is: [J@232204a1
The elements in the LongArray:
281474978840576, 2201170739201,