Bootstrap

HashMap赋值问题

java HashMap赋值给另一个HashMap时,当调用方法时,两个Map的值都会改变

        Map<String,Integer> a=new HashMap<>();
        a.put("a",1);
        a.put("b",2);
        System.out.println(a);
        Map<String,Integer> b=new HashMap<>();
        b=a;
        System.out.println(b);
        b.put("c",3);
        System.out.println(a);
        System.out.println(b);

结果:

两个都发生改变

方法一:.putAll()方法

        HashMap<String,Integer> a=new HashMap<>();
        a.put("a",1);
        a.put("b",2);
        System.out.println(a);
        HashMap<String,Integer> b=new HashMap<>();
        b.putAll(a);     //放入b中
        System.out.
;