程序中用到了遞歸,大致寫個框架吧:
private void do(List<Object> list){
/*
……中間是一系列的邏輯過程
*/
map.put(num,list);
//list.clear();
/*
……
*/
do(list);
}
請注意紅色註釋部分,開始寫的時候,這條並沒有註釋掉,因而產生了錯誤,我發現map中的list被清掉了,原先認爲數據會存在map中,後來請教別人,才知道map對其只是內存的一個映射,所以list清空後,map中的list也會變爲空。
又學到了一點很基礎的東西,記錄一下……