如何解决哈希图-使用布尔值
我正在实现一个包含哈希图的Java程序,我想使用两个不同的哈希图和一个布尔函数。因此,对于每个键,根据布尔结果,它将选择一个哈希映射。这有什么缺点/优势?
解决方法
有两种方法可以做到这一点(据我目前所能想到的):
方法1:(来自@WJS,位于注释中)
具有一个带有布尔键的HashMap,并将相应的HashMap作为值。像这样:
HashMap<Boolean,Map<Key,Value>> outer = new HashMap<>();
方法2: 由于只能有两个与您的布尔值 true 或 false 相对应的HashMap,所以我不认为您需要具有另一个HashMap,并且可以简单地使用布尔变量。
例如:
// or similar depending on your implementation and needs; can be
// extended for choosing get(),set(),etc.
boolean flag;
HashMap<Key,Value> trueMap = new HashMap<>();
HashMap<Key,Value> falseMap = new HashMap<>();
HashMap<Key,Value> map = flag ? trueMap : falseMap;
像这样选择HashMap并没有不利之处,而且实际上相当普遍。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。