我敢肯定有一个很好的理由,但是有人可以解释为什么java.util.Set
缺少界面get(int Index)
或任何类似的get()
方法吗?
似乎集合非常适合放入东西,但我找不到从中检索单个项目的优雅方法。
如果我知道我想要第一个项目,我可以使用set.iterator().next()
,但否则我似乎必须强制转换为 Array 以检索特定索引处的项目?
从集合中检索数据的适当方法是什么?(除了使用迭代器)
我确信它被排除在 API 之外的事实意味着有充分的理由不这样做 - 有人可以启发我吗?
编辑: 这里有一些非常棒的答案,还有一些说“更多上下文”。具体场景是 dbUnit 测试,我可以合理地断言从查询返回的集合只有 1 个项目,并且我试图访问该项目。
但是,如果没有这个场景,这个问题会更有效,因为它仍然更加集中:
set 和 list 有什么区别。
感谢所有人在下面提供出色的答案。