【问题标题】:Get key from HashMap that contains string fragment从包含字符串片段的 HashMap 中获取密钥
【发布时间】:2016-04-18 02:36:47
【问题描述】:

从包含一些字符串片段的HashMap 获取String Key 的最简单方法是什么?唯一的方法是枚举所有键并执行substring(),这是真的吗?

这个伪代码得到了准确的字符串,我需要只包含片段的字符串。

Map hm= new HashMap();
...
res = hm.get("blabla");

我需要使用 java 1.4

【问题讨论】:

标签: java hashmap


【解决方案1】:

是的,您必须循环所有键并搜索所需的子字符串。

HashMap.get 将调用equals,因此对于字符串,它们必须具有完全相同的内容。

【讨论】:

    【解决方案2】:

    您必须创建自定义数据结构或单独检查每个键。下面返回一个列表:

    Set ref = hm.keySet();
    Iterator it = ref.iterator();
    List list = new ArrayList(); // list contaning the deired elements
    
    while (it.hasNext()) {
        Object o = it.next(); 
        if(hm.get(o).contains(value)) { 
            list.add(o); 
        } 
    } 
    

    【讨论】:

      猜你喜欢
      • 2021-09-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-08
      • 2012-08-13
      • 2016-09-07
      • 2022-11-17
      • 2022-09-29
      • 2020-11-20
      相关资源
      最近更新 更多