使用java,如何将HashMap<Integer,Integer>的键进行过滤,留下的元素的键必须是数组new Integer(){1,2,3}中的数据
时间: 2024-09-12 15:01:57 浏览: 30
Java8HashMap键与Comparable接口编程开
在Java中,你可以通过遍历HashMap并检查其键是否存在于指定的整数数组中来过滤Map。以下是步骤:
1. 创建一个Integer类型的数组:
```java
Integer[] filterArray = {1, 2, 3};
```
2. 定义一个HashMap并填充一些键值对:
```java
HashMap<Integer, Integer> map = new HashMap<>();
map.put(1, 10);
map.put(2, 20);
map.put(3, 30);
map.put(4, 40); // 这些键将会被过滤掉
```
3. 创建一个新的HashMap,只包含filterArray中的键作为键值对:
```java
HashMap<Integer, Integer> filteredMap = new HashMap<>();
for (int key : map.keySet()) {
if (Arrays.asList(filterArray).contains(key)) {
filteredMap.put(key, map.get(key));
}
}
```
在这个过程中,我们首先通过`keySet()`获取原始地图的所有键,然后使用`containsKey()`方法判断键是否在`filterArray`中,如果在,则添加到新的`filteredMap`中。
阅读全文