我正在创建一个 HashMap 如下:
private HashMap <String, JSONArray> HiveMap;
HiveMap = new HashMap <String, JSONArray>();
还有一个私有类变量,用于存储一些计算数据,这些数据将在计算完成后放入 HashMap:
private JSONArray hiveList;
计算完hiveList后,我把hiveList放到创建的HashMap(HiveMap)中:
HiveMap.put(hiveNode,hiveList);
当我现在打印出 HiveMap 时,我得到的输出与预期的一样,包含字段hiveNode
并存hiveList
在于 Hashmap 中。<"hiveNode":"hiveList">
完成此操作后,我假设我从中放入 HashMap 的数据hiveList
将持续存在,因此我使用清除 hiveList 数组hiveList.clear();
但是当我在清除 hiveList 后打印 Hashmap 时,我看到 hiveList 中的数据也从 HashMap 中消失了。
清除 hiveList 后打印 HashMap 会导致:<"hiveNode": >
我不理解这种行为,如果有人能对此有所了解,我将不胜感激。