【问题标题】:Hash map with multiple keys? [duplicate]具有多个键的哈希映射? [复制]
【发布时间】:2017-01-20 11:31:47
【问题描述】:

我可以在 Java 中创建一个像这样的哈希映射吗?

HashMap<String, String, Integer> hmap = new HashMap<String, String, Integer>()

我的问题和这个类似Question

我是 Java 新手。所以我想知道的是,如果我需要类似上面的东西,如果那是无效的,那么最好使用的数据结构是什么?

【问题讨论】:

  • 不,但你可以拥有HashMap&lt;Pair&lt;String, String&gt;, Integer&gt; hmap
  • @rowana 您可以创建一个包含两个String 对象的新类并将其用作键。

标签: java hashmap


【解决方案1】:

创建一个包含两个String 对象的简单类:

public class MyKey {
    private String a;
    private String b;

    // ... accessors, mutators etc.
}

然后将它的对象用作地图中的键:

HashMap<MyKey, Integer> hmap = new HashMap<>()

稍后,添加一个新条目:

hmap.put(new MyKey("a", "b"), 2);

【讨论】:

  • 我需要搜索其中一个字符串,如果有模式匹配,则提取另一个。我怎么能在这里做呢?
  • @rowana 我认为这不在您原始问题的范围内,请发布一个新问题。但我可能会尝试遍历地图的条目集,检查关键部分,然后在同一个循环中提取另一个。
  • @Jezor 但这次使用地图结构将没有意义。他可以只使用一个列表。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-13
  • 1970-01-01
  • 1970-01-01
  • 2023-03-15
  • 1970-01-01
  • 2014-10-06
相关资源
最近更新 更多