20230411 java.util.BitSet
简介
public class BitSet implements Cloneable, java.io.Serializable
- 没有实现 Set 接口
- 此类实现了一个按需增长的位向量
- 每个位对应一个布尔值
- BitSet 的位由非负整数索引
- 可以检查、设置或清除各个索引位。一个 BitSet 可以通过逻辑与、逻辑或、逻辑异或运算修改另一个 BitSet 的内容
- 默认情况下,集合中的所有位的初值 false
- 不支持 null
- 线程不安全
方法
-
and
逻辑与,与入参BitSet执行逻辑与,当前BitSet的值会被改变
-
andNot
and 的反操作
-
cardinality
返回此 BitSet 中设置为 true 的位数
-
clear
将位设置为false,set 方法的反操作
-
clone
深克隆
-
equals
对于每个非负 int 索引 k,
((BitSet)obj).get(k) == this.get(k)
,返回 true -
flip
非操作(!)
-
get
获取索引位的布尔值,或获取子BitSet
-
hashCode
-
intersects
判断是否和入参BitSet存在相同位都为true
-
isEmpty
判断是否存在为true的位
-
length
返回此 BitSet 的“逻辑大小”:BitSet 中最高设置位(true位)的索引加一。如果 BitSet 不包含设置位,则返回零。
-
nextClearBit, nextSetBit, previousClearBit, previousSetBit
下(上)一个true(false)位的索引值,包含入参索引
-
or
逻辑或,与入参BitSet执行逻辑或,当前BitSet的值会被改变
-
set
将位设置为true,clear 方法的反操作
-
size
返回此 BitSet 实际使用的空间位数来表示位值。集合中的最大元素是 size - 第一个元素。返回的不是true位的个数,是底层数组words的size
-
stream
返回此 BitSet 中true位的索引流
-
toByteArray, toLongArray
将底层数组words转换形式输出出来
-
toString
由低到高输出所有true位的索引
-
valueOf
将入参数据结构转为BitSet
-
xor
逻辑异或(相同得0,不同得1),与入参BitSet执行逻辑异或,当前BitSet的值会被改变