Java HashMap clone()方法与示例

HashMap类clone()方法

  • clone()方法在java.util包中可用。

  • clone()方法用于获取此HashMap实例的克隆副本,换句话说,可以说它返回此HashMap的浅表副本。

  • clone()方法是一种非静态方法,只能使用类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • clone()方法在克隆对象时不会引发异常。

语法:

    public Object clone();

参数:

  • 它不接受任何参数。

返回值:

该方法的返回类型为Object,它将克隆此HashMap。

示例

//Java程序演示示例 
//clone()HashMap的Object方法的说明 

import java.util.*;

public class CloneOfHashMap {
    public static void main(String[] args) {
        //实例化HashMap对象
        HashMap < Integer, String > hm = new HashMap < Integer, String > ();
        HashMap < Integer, String > clone_map = new HashMap < Integer, String > ();

        //通过使用put()方法是添加
        //TreeMap中的键/值对
        hm.put(10, "C");
        hm.put(20, "C++");
        hm.put(50, "JAVA");
        hm.put(40, "PHP");
        hm.put(30, "SFDC");

        //显示HashMap和clone_map-
        System.out.println("HashMap: " + hm);
        System.out.println("CloneMap: " + clone_map);

        //通过使用clone()方法是克隆
        //这个对象
        clone_map = (HashMap) hm.clone();

        //显示clone_map-
        System.out.println("hm.clone(): " + clone_map);
    }
}

输出结果

HashMap: {50=JAVA, 20=C++, 40=PHP, 10=C, 30=SFDC}
CloneMap: {}
hm.clone(): {40=PHP, 50=JAVA, 10=C, 20=C++, 30=SFDC}