Java List中新增一個物件多次
阿新 • • 發佈:2018-11-04
在實際應用場景中,可以需要在一個List中新增多個物件,在使用的時候有個誤區就是將一個物件新增多次到List中,導致資料不一致。
測試程式碼:
public class test { public static void main(String[] args) { List<CreditLoanXMLInfo> list = new ArrayList(); CreditLoanXMLInfo creditLoanXMLInfo = new CreditLoanXMLInfo(); for (int i = 0; i < 3; i++) { creditLoanXMLInfo.setAttrvalue(i + ""); list.add(creditLoanXMLInfo); } System.out.println(list.size()); for (CreditLoanXMLInfo a :list){ System.out.println(a.getAttrvalue()); } } }
結果輸出
3
2
2
2
可以看到,程式碼中我們想要儲存0,1,2的值
實際上list儲存的是同個物件,這個物件儲存的是最後一次設定的那個值2,不是想要的結果,所以不能這樣使用。