java - 比较作为映射的键和值的集合的大小
问题描述
考虑一个映射 m,其中 m 是 HashMap 或 TreeMap 类型。假设 s1 和 s2 都是 HashSet 或 TreeSet 类型的集合,其中 s1 是 m 中的键集合,s2 是 m 中对应值的集合。哪个一定是真的?
一个。s1.size() > s2.size()
湾。s1.size() <= s2.size()
C。s1.size() >= s2.size()这是正确答案。
d。s1.size() == s2.size()
e. s1.size() < s2.size()
我原以为它会是“b”,因为一个键可以有很多值,但事实证明答案是 c,其中键可能比值多。但是,我在理解提供的答案 (c) 时遇到问题——谁能帮我理解为什么 b 是错误的而 c 是正确的?
解决方案
你倒过来了:一个键最多有一个 type 的值V
。(这V
可能是一个像集合或列表这样的容器,但它是映射中的单个值。)多个键可以具有相同的值(实际上这就是HashSet
它自身的实现方式,在 a 之上HashMap
)。
推荐阅读
- c++ - 模板化函数中的 shared_ptr 析构函数崩溃
- java - 我应该使用哪条路径?
- java - MangedBean 类中的任何@Autowired 注入都不起作用,它总是等于NULL?
- google-apps-script - 如何通过 API 更改 Apify 演员参数
- apache-flink - Flink窗口函数getResult未触发
- c - 在 C 中找到矩阵 3x3 或更大的行列式的问题
- c# - RichTextBox - 如何突出显示行尾?
- php - 每天在特定时间自动触发 Mysql 查询
- c# - 为什么在某些情况下使用 LineRenderer 绘制的线条似乎很粗?
- javascript - 无法将来自 db.countDocuments 的数据存储在 mongoDB 中