Sah*_*ary 9 java arrays arraylist
首先让我说我不能在这里放任何代码,因为我的笔记本电脑上的互联网不能工作,所以我通过手机发布这个.好吧问题是我说有两个类:第一和第二类.第一类有一个ArrayList属性,它从类2中调用void方法并将其ArrayList作为参数传递.现在该方法初始化另一个方法ArrayList并使其等于我传递的参数并对该新方法进行更改ArrayList.有趣的是,即使我作为参数传递的原始ArrayList也在改变.可能的原因是什么?
问题是当你使用=来使新的ArrayList成为原始的副本时,你只是创建了对同一个ArrayList的新引用.可以把它想象成指向同一个对象的两个变量.
看看这个,它可能会帮助你理解发生了什么:Java是"通过参考传递"还是"传递价值"?
为了解决您的问题,您需要使用"new"关键字创建一个新的ArrayList,然后添加所有对象,或使用clone()方法.