如何在Java中将地图内容复制到另一个哈希表?
Hashtable 类实现了一个哈希表,它将键映射到值。任何非空对象都可以用作键或值。要从哈希表中成功存储和检索对象,用作键的对象必须实现 hashCode 方法和 equals 方法。
HashMap 和 Hashtable 用于使用散列技术以键和值的形式存储数据,以存储唯一键。使用Java putAll() 方法将 Map 内容复制到另一个 Hashtable。
putAll() 方法:该方法将所有映射从指定的 hashmap 复制到 hashtable。这些映射替换了此哈希表对当前在指定哈希映射中的任何键所具有的任何映射。
句法:
hashtable.putAll(hashmap)
参数:该方法采用一个参数hashmap来引用我们要从中复制的现有映射。
返回值:该方法不返回任何值。
异常:如果我们要从中复制的地图为空,则该方法抛出NullPointerException 。
将 HashMap 元素复制到 Hashtable 的步骤
- 创建一个新的 HashMap 并添加一些元素
- 将映射放入 HashMap
- 创建一个新的哈希表。
- 使用putAll()方法将元素从 HashMap 复制到 Hashtable
例子:
Input:
hs.put("first", "Geeks");
hs.put("second", "for");
hs.put("third", "Geeks");
Output:
{third=Geeks, second=for, first=Geeks}
{g2=g2 ans, g1=g1 ans, third=Geeks, second=for, first=Geeks}
Java
// Java program to copy Map content to another Hashtable
import java.util.HashMap;
import java.util.Hashtable;
public class NewExample {
public static void main(String a[])
{
// Create hashmap and insert elements
HashMap hashmap
= new HashMap();
// Add mappings
hashmap.put("k1", "GeeksForGeeks");
hashmap.put("k2", "New Year");
// Create hashtable
Hashtable hashtable
= new Hashtable();
// Use putAll to copy Map elements to hashtable.
hashtable.putAll(hashmap);
// Print hashtable elements
System.out.println("Hashtable elements: "
+ hashtable);
}
}
输出
Hashtable elements: {k2=New Year, k1=GeeksForGeeks}