import java.util.BitSet;
public class BitSetExample {
public static void main(String[] args) {
// 创建一个 BitSet 实例
BitSet bitset = new BitSet();
// 设置第 2、4 和 6 位为 true (1)
bitset.set(2);
bitset.set(4);
bitset.set(6);
// 打印 BitSet 的内容
System.out.println("Initial BitSet: " + bitset);
// 检查第 4 位是否为 true
boolean isSet = bitset.get(4);
System.out.println("Is bit 4 set? " + isSet);
// 清除第 4 位
bitset.clear(4);
System.out.println("BitSet after clearing bit 4: " + bitset);
// 翻转所有位
bitset.flip(0, bitset.length());
System.out.println("BitSet after flipping all bits: " + bitset);
// 计算设置为 true 的位的数量
int cardinality = bitset.cardinality();
System.out.println("Number of bits set to true: " + cardinality);
// 获取第一个和最后一个设置为 true 的位的索引
int firstTrueBitIndex = bitset.nextSetBit(0);
int lastTrueBitIndex = bitset.previousSetBit(bitset.size() - 1);
System.out.println("First true bit index: " + firstTrueBitIndex);
System.out.println("Last true bit index: " + lastTrueBitIndex);
}
}
true
或 false
。bitset.set(int bitIndex)
:将指定索引位置的位设置为 true
。bitset.get(int bitIndex)
:检查指定索引位置的位是否为 true
。bitset.clear(int bitIndex)
:将指定索引位置的位设置为 false
。bitset.flip(int fromIndex, int toIndex)
:翻转从 fromIndex
到 toIndex
范围内的所有位。bitset.cardinality()
:返回设置为 true
的位的数量。bitset.nextSetBit(int fromIndex)
:返回从 fromIndex
开始的第一个设置为 true
的位的索引。bitset.previousSetBit(int fromIndex)
:返回从 fromIndex
开始的第一个设置为 true
的位的索引(从高到低)。这段代码展示了如何使用 BitSet
类来操作位集合,并进行一些常见的位操作。
下一篇:java获取当前时间戳字符串
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站