加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

在Java中使用哪个集合?

发布时间:2020-12-15 02:05:53 所属栏目:Java 来源:网络整理
导读:我想将整数映射到字符串,它们是一对一的,例如: 60 : c61 : c#62 : d63 : d#64 : e65 : f66 : f# 但我需要有能力做到以下几点: 从键中获取值:“c”= getValue(60)[给它一个键60,返回字符串值] 从值获取键:65 = getKey(“f”)[给它一个字符串值“f”,返回
我想将整数映射到字符串,它们是一对一的,例如:

60 : c
61 : c#
62 : d
63 : d#
64 : e
65 : f
66 : f#

但我需要有能力做到以下几点:

>从键中获取值:“c”= getValue(60)[给它一个键60,返回字符串值]
>从值获取键:65 = getKey(“f”)[给它一个字符串值“f”,返回一个键]

哪种收集模型最适合这种情况?我问,因为我看了几个,没有人可以做< 2>部分.或者我是否必须编写代码来遍历每一对以找到哪个键具有值“f”?

编辑:jdk1.6中没有这样做吗?

解决方法

在另一个论坛发现了这个( link text)

public class ReversibleMap {
       private final Map keyToValue = new HashMap(8);
       private final Map valueToKey = new HashMap(8);

       public void put(Integer key,String value) {
           keyToValue.put(key,value);
           valueToKey.put(value,key);
       }

       public String get(Integer key) {
           return (String) keyToValue.get(key);
       }

       public Integer getKey(String value) {
           return (Integer) valueToKey.get(value);
      }
   }

这应该做

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读