java - 为什么 java.util.BitSet 没有实现 java.util.Set

标签 java set bitset

为什么 java.util.BitSet 没有实现 java.util.Set<Integer> 界面。特别是当它可以轻松做到这一点时。此外,BitSet 用于维护整数是否“打开或关闭”,Set 也完全相同。所以BitSetSet<Integer> .引用一些评论说

Now take a look at the methods of BitSet. The purpose of the class is to perform logical operations on a collection of bits that are in a certain order.

我还是会说 BitSetSet<Integer>它还提供了一组额外的操作。

最佳答案

由于评论不够明显:

你说“BitSet 实际上是一个有效的集合。BitSet 是一个集合”——不,它不是。 Set是一个不包含重复元素的集合。

现在想象一个 Set<Bit> .由于位只能是 1 或 0,这将是一个非常无聊的最大大小为 2 的集合。

现在看看the methods of BitSet .该类的目的是对按特定顺序排列的一组位执行逻辑运算。这与 Set 无关.

关于java - 为什么 java.util.BitSet 没有实现 java.util.Set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39793903/

相关文章:

python - 多集交集运算的平均复杂度及其底层实现

c++ - 将 bitset 与 float 类型一起使用

c++ - `std::bitset::reference` 赋值运算符?

Python - 这是初始化空集矩阵的正确方法吗?

C++ 如何将输入值分配给 std::bitset 参数?

java - Guava 多重映射到响应模型的映射结果

java - 在 hibernate 中将单个 bean 类映射到多个表

java - : <T> ReturnContainer test() and: <T> ReturnContainer<T> test()? 之间的区别

java - 在 SWT 中创建一个具有 2 个父级的小部件

c++ - 无法在构造函数中进行设置元素插入