新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
list集合存引用數(shù)據(jù)類型時的問題
list集合存引用數(shù)據(jù)類型時的問題
集合list的存儲元素:
創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),古冶企業(yè)網(wǎng)站建設(shè),古冶品牌網(wǎng)站建設(shè),網(wǎng)站定制,古冶網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,古冶網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
(1)如果list中存的是基本數(shù)據(jù)類型,則存的是值
(2)如果list中存的是引用數(shù)據(jù)類型(如對象等),則存的是引用
如果對象的引用地址沒變,內(nèi)容變化,也會引起調(diào)用該對象時內(nèi)容變化
下面舉一個在集合list中存放對象的例子:
//構(gòu)建原始數(shù)據(jù)
ArrayList list = new ArrayList();
Goods goods1=new Goods("plum ", 2);
list.add(goods1);
list.add(new Goods("apple", 1));
list.add(new Goods("banana", 2));
//打印原始數(shù)據(jù)
System.out.println("原始數(shù)據(jù):");
for(Goods goods : list){
System.out.println(goods);
}
goods1.setGoodsId(444);//改變goods1的內(nèi)容
System.out.println("原始數(shù)據(jù)1:");
for(Goods goods : list){
System.out.println(goods);
}
結(jié)果:
原始數(shù)據(jù):
Goods{goodsName='plum ', goodsId=2}
Goods{goodsName='apple', goodsId=1}
Goods{goodsName='banana', goodsId=2}
原始數(shù)據(jù)1:
Goods{goodsName='plum ', goodsId=444}
Goods{goodsName='apple', goodsId=1}
Goods{goodsName='banana', goodsId=2}
結(jié)果表明:由于list中存儲對象的引用所指的內(nèi)容發(fā)生了變化,所以導致了list中元素內(nèi)容的改變
名稱欄目:list集合存引用數(shù)據(jù)類型時的問題
網(wǎng)頁路徑:http://www.dlmjj.cn/article/jhhgoj.html