Java Hashtable clone() 方法



描述

Java Hashtable clone() 方法用于创建此哈希表的浅拷贝。

声明

以下是java.util.Hashtable.clone() 方法的声明。

public Object clone()

参数

返回值

方法调用返回哈希表的克隆。

异常

克隆整数、整数对的 Hashtable 示例

以下示例演示了如何使用 Java Hashtable clone() 方法获取 Hashtable 的浅拷贝。我们创建了两个整数、整数对的 Hashtable 对象。然后向一个表中添加一些条目,使用 clone() 方法填充另一个表,然后打印两个哈希表。

package com.tutorialspoint;

import java.util.Hashtable;

public class HashtableDemo {
   public static void main(String args[]) {
      
      // create two hash hashtables
      Hashtable<Integer, Integer> hashtable1 = new Hashtable<>();
      Hashtable<Integer, Integer> hashtable2 = new Hashtable<>();

      // populate 1st table
      hashtable1.put(1, 1);
      hashtable1.put(2, 2);
      hashtable1.put(3, 3); 

      // clone 1st table
      hashtable2 = (Hashtable)hashtable1.clone();

      System.out.println("1st Hashtable: " + hashtable1);
      System.out.println("Cloned 2nd Hashtable: " + hashtable2);   
   }    
}

输出

让我们编译并运行上述程序,这将产生以下结果。

1st Hashtable: {3=3, 2=2, 1=1}
Cloned 2nd Hashtable: {3=3, 2=2, 1=1}

克隆整数、字符串对的 Hashtable 示例

以下示例演示了如何使用 Java Hashtable clone() 方法获取 Hashtable 的浅拷贝。我们创建了两个整数、字符串对的 Hashtable 对象。然后向一个表中添加一些条目,使用 clone() 方法填充另一个表,然后打印两个哈希表。

package com.tutorialspoint;

import java.util.Hashtable;

public class HashtableDemo {
   public static void main(String args[]) {
      
      // create two hash hashtables
      Hashtable<Integer, String> hashtable1 = new Hashtable<>();
      Hashtable<Integer, String> hashtable2 = new Hashtable<>();

      // populate 1st table
      hashtable1.put(1, "A");
      hashtable1.put(2, "B");
      hashtable1.put(3, "C"); 

      // clone 1st table
      hashtable2 = (Hashtable)hashtable1.clone();

      System.out.println("1st Hashtable: " + hashtable1);
      System.out.println("Cloned 2nd Hashtable: " + hashtable2);   
   }    
}

输出

让我们编译并运行上述程序,这将产生以下结果。

1st Hashtable: {3=C, 2=B, 1=A}
Cloned 2nd Hashtable: {3=C, 2=B, 1=A}

克隆整数、对象对的 Hashtable 示例

以下示例演示了如何使用 Java Hashtable clone() 方法获取 Hashtable 的浅拷贝。我们创建了两个整数、Student 对的 Hashtable 对象。然后向一个表中添加一些条目,使用 clone() 方法填充另一个表,然后打印两个哈希表。

package com.tutorialspoint;

import java.util.Hashtable;

public class HashtableDemo {
   public static void main(String args[]) {
      
      // create two hash hashtables
      Hashtable<Integer, Student> hashtable1 = new Hashtable<>();
      Hashtable<Integer, Student> hashtable2 = new Hashtable<>();

      // populate hash table
      hashtable1.put(1, new Student(1, "Julie"));
      hashtable1.put(2, new Student(2, "Robert"));
      hashtable1.put(3, new Student(3, "Adam"));

      // clone 1st table
      hashtable2 = (Hashtable)hashtable1.clone();

      System.out.println("1st Hashtable: " + hashtable1);
      System.out.println("Cloned 2nd Hashtable: " + hashtable2);   
   }    
}
class Student {
   int rollNo;
   String name;

   Student(int rollNo, String name){
      this.rollNo = rollNo;
      this.name = name;
   }

   @Override
   public String toString() {
      return "[ " + this.rollNo + ", " + this.name + " ]";
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果。

1st Hashtable: {3=[ 3, Adam ], 2=[ 2, Robert ], 1=[ 1, Julie ]}
Cloned 2nd Hashtable: {3=[ 3, Adam ], 2=[ 2, Robert ], 1=[ 1, Julie ]}
java_util_hashtable.htm
广告
© . All rights reserved.