我需要一个 BitSet,它可以轻松连接多个 BitSet,创建一个新的 BitSet。 default implementation没有这样的方法。
你们中的任何人都知道在某些外部库中是否有任何实现可以轻松连接?
例如,假设我有一个位数组 11111 和另一个位数组 010101。我想要附加功能。所以在连接之后它会产生 11111010101。
最佳答案
好吧,因为没有左移方法,所以没有办法实现这种非常高效的(性能和内存)。
您可以做的是使用明显的 nextSetBit
for 循环 - 速度慢,但内存效率高。
可能更快的方法是在其中一个上使用 toLongArray
,复制正确移位到足够大的数组,从中创建一个位集,或者与另一个一起创建位集。这样你就不会对单个位进行任何位移,而是对字大小的 block 进行处理。
关于允许轻松连接 BitSet 的 Java BitSet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10495953/