`
xiaoyezi1128
  • 浏览: 131284 次
  • 性别: Icon_minigender_2
  • 来自: 天津
社区版块
存档分类
最新评论

map 通过value反向求key

阅读更多

import java.util.*;
public class Map_ValueGetKey {
 HashMap map;
 public Map_ValueGetKey(HashMap map) {                    //初始化操作
  this.map=map;
 }
 
public Object getKey(Object value) {
  Object o=null;
  ArrayList all=new ArrayList();    //建一个数组用来存放符合条件的KEY值
 

/* 这里关键是那个entrySet()的方法,它会返回一个包含Map.Entry集的Set对象. Map.Entry对象有getValue和getKey的方法,利用这两个方法就可以达到从值取键的目的了 **/ 

 Set set=map.entrySet();
  Iterator it=set.iterator();
  while(it.hasNext()) {
   Map.Entry entry=(Map.Entry)it.next();
   if(entry.getValue().equals(value)) {
    o=entry.getKey();
    all.add(o);          //把符合条件的项先放到容器中,下面再一次性打印出
   }
  }
  return all;
 }
 public static void main(String[] args) {
  HashMap map=new HashMap();
  map.put("1","a");
  map.put("2","b");
  map.put("3","c");
  map.put("4","c");
  map.put("5","e");
  Map_ValueGetKey mvg=new Map_ValueGetKey(map);
  System.out.println(mvg.getKey("c"));
  }

}

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    HashMap通过VALUE反向求KEY的方法

    然而,有时我们可能需要反向操作,即根据值(VALUE)找到对应的键(KEY)。这种情况在处理数据时可能会遇到,特别是在我们需要查找与特定值关联的所有键时。 在给定的代码段中,展示了一种实现这一功能的方法。首先...

    C++ map详解

    C++中的`map`是一个关联容器,它存储键值对(key-value pairs),其中每个键都是唯一的。`map`在内部实现为红黑树(Red-Black Tree),保证了其插入、查找和删除操作的时间复杂度为O(log n)。在C++标准库中,`map`...

    map使用实例小结,VS2005运行通过

    - `map, string>::iterator iter = mapStudent.find(key);` `find`函数用于查找指定的键,如果找到则返回对应的迭代器,否则返回`end()`。 这些基本操作展示了如何在C++中使用`std::map`进行数据的插入、查询和...

    map总结,原理,使用

    - **根据 Key 修改 Value**:通过 Key 可以轻松访问对应的 Value 并进行修改。 - **遍历所有记录**:提供了多种迭代器方法,使得遍历整个 map 成为可能。 #### 四、使用 Map 1. **包含头文件**:首先需要包含 `...

    hibernate map 集合映射

    在这个例子中,`PROPERTY_KEY`作为Map的键,`PROPERTY_VALUE`作为Map的值,`USER_ID`是关联的外键。 ### 6. 性能优化 在使用集合映射时,需要注意懒加载(lazy loading)和批处理(batch-size)的设置,以优化性能...

    MapUtils_java_Maputils_

    - `public static , V> V getOrDefault(Map, V> map, K key, V defaultValue)`: 如果Map中不存在指定的键,返回默认值。 - `public static , V> Map, V> mergeMaps(Map, V>... maps)`: 将多个Map合并为一个新Map。 ...

    map基本用法.docx

    `map`的主要优势在于它提供了一种高效的方法来通过键查找对应的值,因为内部实现通常基于红黑树,保证了O(log n)的时间复杂度。下面我们将详细讨论`map`的基本操作和使用。 1. **构造函数**: `map`可以通过指定键...

    formdata.js和mimeMap.js

    `mimeMap.js`文件可能会包含一个函数库,提供方便的方法来获取或检查特定文件扩展名的MIME类型,或者根据MIME类型反向查找对应的扩展名。这些功能在处理文件上传、下载、内容过滤等方面非常实用。 综上所述,`...

    Java基础学习22.pdf

    Map接口用于存储键值对的数据,其中键(Key)是唯一的,每个键对应一个值(Value)。键和值之间通过映射关系建立联系,实现了从键到值的一对一对应。在Map中,我们可以通过键来获取对应的值。 2. **Map接口的方法*...

    cpp代码-test_map

    `std::map`是一个关联容器,它提供了键值对的映射功能,使得我们可以通过一个键(key)来高效地查找、插入和删除对应的值(value)。在C++中,`std::map`通常用于实现字典或者查找表的数据结构。 `std::map`的关键特性...

    主要用于操作json的工具JAR

    map.put(key, jsonObject.getString(key)); list.add(map); } Gson gson = new Gson(); String jsonListString = gson.toJson(list); System.out.println(jsonListString); } } ``` 4. **JSONArray转List...

    开源项目-jszwec-railing.zip

    例如,`key1=value1&key2[]=value2a&key2[]=value2b&key3[key4]=value4`。Railing 库就是用来处理这种格式,使得Go开发者也能方便地在他们的应用中实现这种功能。 Railing 库的核心功能可能包括以下几点: 1. **...

    Freemarker中遍历list集合实例

    5. **遍历map**:如果list中的元素是map,可以用`key`和`value`遍历键值对。 ```freemarker [0].properties as entry> 属性名: ${entry.key}, 值: ${entry.value} ``` 6. **反向遍历**:使用`reverse`指令...

    C++中STL使用总结

    2. 插入元素:使用mm.insert(std::pair<Key, T>(key, value));插入元素。 3. 删除元素(键值相同元素全部删除):使用mm.erase(key);删除指定键的所有元素。 4. 查找元素:使用mm.find(key);查找multimap中是否...

    springboot工程中使用ObjectMapper解析JSON字符串

    String jsonMapString = "{\"key1\":\"value1\",\"key2\":\"value2\"}"; Map, Object> map = mapper.readValue(jsonMapString, Map.class); ``` 以上就是使用Spring Boot中的ObjectMapper进行JSON处理的基本方法。...

    groovy学习笔记

    Map是键值对的集合,如`[key1: value1, key2: value2]`。Range则表示一系列连续的数值,如`1..5`。Map支持`get(key)`和`put(key, value)`方法,Range可以用于迭代,如`for(i in 1..5) {...}`。 ### 第7章:函数 ...

    java遍历HashMap简单的方法

    String value = map.get(key); System.out.println(key + "=" + value); } ``` 2. 键集(KeySet)遍历: HashMap的`keySet()`方法返回所有键的集合,可以通过遍历这个集合来访问每个键,然后使用`get()`方法获取...

    json转换需要依赖的jar包

    map.put("key1", "value1"); map.put("key2", "value2"); // 使用JSONObject的fromObject方法将HashMap转换为JSONObject JSONObject jsonObject = JSONObject.fromObject(map); // 输出转换后的JSON对象 ...

    使用 SharedPreferences 存取复杂类型的数据

    String value = preferences.getString("key", "default_value"); ``` 由于原生不支持复杂类型的存储,我们需要借助其他方法来实现。一种常见的方式是将复杂类型的数据转换为基本类型,如JSON串或Base64编码的字符...

Global site tag (gtag.js) - Google Analytics