使用2 ArrayList,我想知道将第一个转换为第二个的“副本”的最佳方法是否像
myFirstArray.clear();
myFirstArray.addAll(mySecondArray);
要么
myFirstArray = mySecondArray.clone();
这两种方法之间的主要区别是什么,这是可取的,并且还有另一个“更简便”或“更清洁”的解决方案。谢谢你的提示
编辑:我使用此副本替换当前正在使用的项目数组替换为我在下一个循环中存储将使用的项目的数组。在循环结束时,我用futurArrayList替换了currentArrayList,并清除了futurArraylist以便在其中添加新项(我希望它足够清晰)
第一个用另一个内容替换列表的内容。第二个创建另一个ArrayList实例,而前一个不变。
如果列表被其他某个对象引用,并且您希望此其他对象保持不变,请使用第二个对象。如果希望另一个对象也具有新内容,请使用第一个。
如果没有其他引用该列表,则没关系。如果您用一些元素替换了巨大列表的内容,第二个将减少所使用的内存。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句