簡體   English   中英

無法從使用 arraylist 作為值的 hashmap 獲取值已清除

[英]Unable to get values from a hashmap which uses a arraylist as value is cleared

我正在研究一段代碼,它有一個 Hashmap。 這個 hashmap 有一個字符串作為鍵和一個 arraylist 作為值。 我填充 arraylist,然后將值放入 hashmap。 輸入值后,我想清除 arraylist 以便不存在舊值。

請看下面的代碼:

ArrayList<Bean> elements = new ArrayList<Bean>();

        for(int j=0; j<array.length; j++){
            String[] id = {"2439","70212","9021","0104","0255","10353","3889","8990","10277"};
            String[] Title = {"Gulliver","Good=Guys","Gnomeo","Gene","ABCD","High","Green=Lantern","Gnomeo2","WXYZ"};
            for(int i=0; i<id.length; i++){
                Bean bean = new bean();
                bean.ID(id[i]);
                bean.Title(title[i]);
                elements.add(bean);
            }
            udbResults.put(array[j], elements);
            elements.clear();
        }

現在,當我嘗試從 hashmap 打印值時,我沒有得到任何內容。 這可能是因為 arraylist.clear()。 為什么會這樣?

此外,我不想為每個數據創建新的 arraylist,因此我想刪除內容但它不起作用。

go 關於此的任何方式。

謝謝,

斯瓦蒂

what you r doing is simply createing and populating an arraylist, then you are puting a link to arraylist into hashmap...so now you have 2 links for one arraylist. 一個在 hashmap 中被稱為“元素”。 然后你 r 從你的 arraylist 中刪除所有元素。 因為你會失去一切。 所以現在你仍然有兩個鏈接,但指向空的 arraylist

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM