17

通常の「カウンターを保持する」方法以外に、BitSetのセットビット数を数える簡単な方法はありますか?

4

3 に答える 3

40

cardinality()メソッドは、設定されたビット数を返します。

于 2011-02-03T06:52:46.673 に答える
3

(cardinality()を呼び出したくないと仮定します)

int count = 0; 
for (int i = bs.nextSetBit(0); i >= 0; i = bs.nextSetBit(i+1)) {
    count++;
}

javadocを参照してください

于 2011-02-03T06:53:48.507 に答える
1
BitSet B1 = new BitSet(3);
B1.set(0);
B1.cardinality();

出力:

1
于 2017-06-24T03:54:51.750 に答える