假设我有三个ArrayList
和一个HashMap,如下所示:
public HashMap<Integer, ArrayList<String>> m = new HashMap<>();
public ArrayList<JSONObject> A = new ArrayList<>();
public ArrayList<JSONArray> B = new ArrayList<>();
public ArrayList<String> C = new ArrayList<>();
我做了:
m.put(0, C);//setting values to the hashmap
C.clear();//resetting value of C
但这也清除了C
内部m
哈希映射,导致m = [0, ""]
。为什么这是Java的情况?
我期待的是这个
int A = 1;
int B = 2;
int C = A+B //result is 3
现在,如果我设置A=0
,则不应影响C
有人可以向我解释一下吗?