Pair和Hashmap之间的区别?

Man*_*ani 3 java collections hashmap keyvaluepair

当Hashmap可以完成相同的工作时,有必要引入Pair类吗?

我看到Pair被引入Java版本8

Daw*_*ica 12

您选择使用哪个类不仅仅是向计算机发送的消息.这也是未来开发人员的信息 - 将来维护您的代码的人,甚至是几个月后您自己的代码.

通过选择是否将特定变量声明为HashMap或者Pair,您可以告诉那些未来的开发人员.这是真的

此变量引用某种映射,该映射使用哈希算法进行快速检索.

要么

此变量引用一对值.

这将有助于未来的开发人员了解您的代码正在做什么.虽然你当然可以使用一个HashMap条目而不是一个条目Pair,但这将是一件非常奇怪的事情,并且它会向你未来的代码维护者发送完全错误的信息.


小智 6

一对基本上是将简单键与值关联起来的便捷方法。映射执行相同的操作来存储键值对,但映射存储键值对的集合并将它们作为一个整体进行操作。

我们多次要求键值对应独立存在,例如:

  • 需要将键值对作为参数传递给方法,或者
  • 方法只需要以对的形式返回两个值

当我们只需要一对键值时,Map 会使事情变得复杂。