BitSet 如何接受长度为 6 的长数组?
How BitSet admit long array with length 6?
BitSet 内部使用大小为 6 的长数组。
但它可以包含 2^31-1 位。
长 = 64 位
6 多头 = 64 * 6。但远小于 2^31-1。请解释一下这个技巧。
存储值的内部数组会在必要时扩展,就像 ArrayList
对对象所做的那样。因此,您的说法是错误的。
大小有2^31-1
(位)的硬性限制,但这只是因为操作(set
、flip
等)将索引参数作为一个 int
。对于大多数用例来说,这可能足够大了。
BitSet 内部使用大小为 6 的长数组。
但它可以包含 2^31-1 位。
长 = 64 位
6 多头 = 64 * 6。但远小于 2^31-1。请解释一下这个技巧。
存储值的内部数组会在必要时扩展,就像 ArrayList
对对象所做的那样。因此,您的说法是错误的。
大小有2^31-1
(位)的硬性限制,但这只是因为操作(set
、flip
等)将索引参数作为一个 int
。对于大多数用例来说,这可能足够大了。