当Hashmap可以执行相同的工作时,有必要引入Pair类吗?
我看到Pair正在引入Java版本8
答案 0 :(得分:10)
您选择使用哪个类不仅仅是向您的计算机发送的消息。它也是未来开发人员的信息 - 将来会维护您的代码的人,甚至是几个月后您自己的代码。
通过选择是否将特定变量声明为HashMap
或Pair
,您可以告诉那些未来的开发人员。它的是
此变量引用某种地图,该地图使用哈希算法进行快速检索。
或强>
此变量引用一对值。
这将有助于未来的开发人员了解您的代码正在做什么。虽然你当然可以使用单HashMap
而不是Pair
,但这将是一件非常奇怪的事情,并且会向你未来的代码维护者发送完全错误的信息。
答案 1 :(得分:2)
从本质上说,一对是将简单键与值相关联的便捷方法。映射在存储键值对时也做同样的事情,但是映射存储对的集合并对其进行整体操作。
我们要求键值对应独立存在的次数,例如:
当我们只需要一对键值时,地图会使事情变得复杂。
答案 2 :(得分:0)
Pair<K, V>
是JavaFX的一部分,而Hashmap是核心API。您很可能使用Pair
来创建一个hashmap实现(我没有对此进行测试,但我认为没有理由为什么不这样做),但Pair
与HashMap
不同}。