2
toBitMask
の指定はBitSet
となり、Creates a bit mask for this set as a new array of longs
と表示されます。しかし、私はtoBitMask
が本当にビットマスクを作成する方法を理解できません。たとえば、私は次のコードを持っています:Scala Bitset toBitMask変換
import scala.collection.BitSet
val nums = BitSet(6)
nums.toBitMask foreach println
1.それは正確に64を返しますか?
アン別の例
val nums1 = BitSet(3, 2).toBitMask
val nums2 = BitSet(3, 2, 0).toBitMask
- なぜnums1 = 12ながらnums2 = 13?
BitSet(3,2) - > 00001100は '2'のように見えますか? – pacman
これは無視されません。最後の "1100"はビット数3,2,1,0 – Dylan
'toBitMask'は実際にあなたのセットのビットマスクを作成していないようです。代わりに、 "BitString"のようなものを作成しています。ここで、 'i'がBitSetにあった場合、ビット番号' i'は1に設定されます。 "1101"では、ビット番号0,2,3が1に設定されています。 "1100"のビット番号2と3は1に設定されています(ビット番号0は最も右側のビットです)。 – Dylan