实现具有多个键的映射
编程中的一个常见需求是一个类似于映射的数据结构,但能够使用多个(不同类型的)键访问值。虽然典型的映射将单一类型的键与相应的值相关联,但此要求需要更灵活的方法。
解决方案:两个映射而不是一个
由于根据映射的性质,使用复合键(例如元组或对)来表示 Java 中的多个键是不够的。这是因为映射依赖于哈希码和相等性检查来进行键查找。因此,仅使用复合键的其中一个组件来搜索值变得不可能。
相反,建议的解决方案是在内部维护两个单独的映射:一个 Map
使用包装类实现
如果需要单个接口,可以创建一个包装类来公开通过任一键访问值的方法。这个包装类会将实际的查找委托给两个底层映射,为用户提供统一的界面。
结论
通过在内部使用两个映射并可能实现一个包装类,可以实现行为类似于具有多个键的映射的数据结构。这种方法确保使用任一键类型有效检索值,同时保持键的唯一性。
以上是如何在 Java 中实现具有多个键的映射?的详细内容。更多信息请关注PHP中文网其他相关文章!