Java: Count number of bits set in a java.util.BitSet

寵の児 提交于 2019-12-04 01:05:43

问题


Any quick method to count the number of set bits in a BitSet other than the usual 'keep a counter' method?


回答1:


The cardinality() method returns the number of set bits.




回答2:


(Assuming you don't want to call cardinality())

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

see javadoc




回答3:


BitSet B1 = new BitSet(3);
B1.set(0);
B1.cardinality();

Output:

1


来源:https://stackoverflow.com/questions/4883172/java-count-number-of-bits-set-in-a-java-util-bitset

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!