多重集接口 – Java
多重集是 Java 中的一种集合,它有助于实现与集合结构类似的顺序无关的相等性。但唯一的区别是,多重集还可以包含重复元素。
- 如果将多重集可视化为列表,则情况并非如此,因为列表不能保存重复值,并且列表元素始终按特定顺序排列。
- 可以将多重集视为介于列表和集合结构之间的集合。在多重集中,允许重复值,并且不能保证多重集中的元素会按特定顺序出现。多重集也称为“包”。
- 它也可以被视为包含元素及其频率的映射。
- 在多重集中,特定元素的总出现次数也称为该特定元素的“计数”。
- multiset.count(element) 是一个函数,当元素不存在于多重集中时,它始终返回 0。
- 多重集使用 Obejct.equals(java.lang.Object) 来检查两个实例是否被认为是相同的,除非在实现中指定。
- 多重集可用于添加元素、删除元素或显式指定其频率。
- setCount(element, 0) 函数基本上表示特定元素的频率/计数为 0,即将其删除或从多重集中删除其所有出现。
- 多重集始终包含频率为正的元素。多重集中的任何元素都不能具有负频率。这意味着计数为负或 0 的元素被视为不存在于多重集中。当调用 elementSet() 或 entrySet() 时,它们将不可见。
- 可以使用 multiset.size() 获取集合的大小,这与多重集中所有元素计数的总和相同。
- 要查找多重集中不同元素的数量,可以使用 elementSet().size()。
示例
以下是一个示例 -
import com.google.common.collect.HashMultiset; import com.google.common.collect.Multiset; Multiset<String> my_multiset = HashMultiset.create(); my_multiset.add("Sample"); my_multiset.add("Sample"); System.out.println(my_multiset);
输出
[Sample x 2]
定义了一个字符串类型多重集集合,并使用“add”函数向其中添加元素。然后在控制台上打印这些元素。
广告