Java中的Hashtable迭代和删除 [英] Iterating over and deleting from Hashtable in Java

查看:24
本文介绍了Java中的Hashtable迭代和删除的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在 Java 中有一个 Hashtable,想要遍历表中的所有值并在迭代时删除特定的键值对.

I have a Hashtable in Java and want to iterate over all the values in the table and delete a particular key-value pair while iterating.

如何做到这一点?

推荐答案

您需要使用显式 java.util.Iterator 来迭代 Map 的条目设置而不是能够使用 Java 6 中可用的增强的 For 循环语法.以下示例遍历 IntegerStringMap对,删除 Integer 键为 null 或等于 0 的任何条目.

You need to use an explicit java.util.Iterator to iterate over the Map's entry set rather than being able to use the enhanced For-loop syntax available in Java 6. The following example iterates over a Map of Integer, String pairs, removing any entry whose Integer key is null or equals 0.

Map<Integer, String> map = ...

Iterator<Map.Entry<Integer, String>> it = map.entrySet().iterator();

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

  // Remove entry if key is null or equals 0.
  if (entry.getKey() == null || entry.getKey() == 0) {
    it.remove();
  }
}

这篇关于Java中的Hashtable迭代和删除的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆