java - 在 java 中通过键从 HashMap 中删除项目

标签 java android dictionary hashmap

我有一个像这样的 HashMap

public static HashMap<String, Integer> jsonPosition = new HashMap<String, Integer>();

我把这样的一些值放在我的 hashmap 中

GlobalClassParameters.jsonPosition.put("another income",
                        GlobalClassParameters.jsonPosition.size());

现在我想通过键删除项目。我写了一些代码,可以删除键等于某个值的所有项。

Object objectToRemove = null;
Iterator<Map.Entry<String, Integer>> iter = GlobalClassParameters.jsonPosition.entrySet().iterator();

while (iter.hasNext()) {
   Map.Entry<String, Integer> entry = iter.next();

   if(entry.getKey().equalsIgnoreCase("another income"))
   {
      objectToRemove = entry;
      break;
   }  
}                               

if(objectToRemove != null)
{
   GlobalClassParameters.jsonPosition.entrySet().remove(objectToRemove);
}

我的问题是我不需要删除所有键等于我的“另一项收入”的对象,但我只想删除一个具有该键的对象。

最佳答案

您不能在 HashMap 中为单个键放置多个值。您只是覆盖了该 key 之前的值。

除了 map 还有一个 remove方法,它接受一个 key 并删除该 key 的条目。

关于java - 在 java 中通过键从 HashMap 中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31991803/

相关文章:

java - 编译器有区别吗 - java

java - 使用递归和回溯找到所有可能的多米诺骨牌链

java - 跨类共享公共(public)代码的最佳实践

java - 将视频插入图库 [Android Q]

python - 元素计数字典

Python:如何从列表中的字典创建 DataFrame 列

javascript - 将 javascript WebSocket 与 Java ServerSocket 连接

android - 查看 Android 键盘缓存

android - 应用react.gradle抛出错误

python - 在 Python3 中对包含字典的列表进行排序