ArrayList 的 add 方法。
如果list 内容为对象。
如果list 内容为对象。
#IntStringList 是我自定义的一个class,有两个属性beforlineNum和info。
ArrayList<IntStringList> needAddList = new ArrayList<IntStringList>();
IntStringList oneNote = new IntStringList();
oneNote.setBeforlineNum(1);
oneNote.setInfo(“123”);
needAddList.add(oneNote);
oneNote.setBeforlineNum(2);
oneNote.setInfo(“456”);
needAddList.add(oneNote);
oneNote.setInfo(“456”);
needAddList.add(oneNote);
现在ArrayList<IntStringList> needAddList中add了两个IntStringList数据。
那么needAddList中的内容是什么?
是1,123;2,456?
结果:
needAddList.get(0).getBeforlineNum=2
needAddList.get(0).getInfo=456
needAddList.get(1).getBeforlineNum=2
needAddList.get(1).getInfo=456
实际上,ArrayList 的 add方法加一个对象时,追加的是指向这个对象的指针,也就是说,get(0)和get(1)是同一个对象。
get出来的内容自然一样。
本文解析了在Java中使用ArrayList添加自定义对象时的行为特点,特别是当连续修改同一对象实例并添加到列表中时,最终列表内容的表现形式。
1782

被折叠的 条评论
为什么被折叠?



