首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于Hash-map的二维阵列

基于Hash-map的二维阵列
EN

Stack Overflow用户
提问于 2014-02-21 00:48:39
回答 2查看 92关注 0票数 0

有没有办法将2d数组放入哈希映射设置中?

数组的示例是两个字符串{"John“、"red"}、{"George”、"blue}“

我希望瑞德能和约翰等人保持一致。

我知道我可以使用嵌套循环来遍历2d数组中的每一项,但是如何设置它来将它们添加到散列映射中呢?

HashMap.put(“约翰”,“红色”);

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-21 00:51:54

假设每个数组都有两个{Name,Color}形式的项,则只需对其进行迭代

代码语言:javascript
复制
for(String[] combo : some2DArray){
   someHashMap.Put(combo[0], combo[1]); // Or swap them, depending on what you 
                                        // want to be the key and the value
}

如果您想避免删除数据的可能性,因为您碰巧有两个同名的人,那么您可以采取以下几种方法:

  • 保留旧数据
  • 保留新的数据
  • 将新数据分配给新键
  • 用相同的键组合数据

保留旧数据

在使用HashMap#put之前执行检查,并查看密钥是否已经存在。

只有当数据还不存在时才添加数据。

保留新的数据

使用当前代码,它将覆盖旧值。

将新数据分配给新的键

根据自己的规则创建一个新键并插入该键。

将数据合并到相同的键

HashMap定义为HashMap<String, List<String>>,并将值添加到列表中。

票数 1
EN

Stack Overflow用户

发布于 2014-02-21 00:51:02

实现Pair类如何,这样您就可以使用HashMap<Pair<String,String>>了?

编辑:可能是我误解了你的问题,这是你问的问题吗?

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21922943

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档