Java 对象的arraylist,添加对象
我是一个差劲的程序员,但是我需要一些帮助来开发一个我一直拖延着开发的应用程序。(请注意,很抱歉第一次尝试时缺少详细信息 我已经创建了一个Java 对象的arraylist,添加对象,java,object,arraylist,Java,Object,Arraylist,我是一个差劲的程序员,但是我需要一些帮助来开发一个我一直拖延着开发的应用程序。(请注意,很抱歉第一次尝试时缺少详细信息 我已经创建了一个myObject的ArrayList,它有自己的属性。当我创建myObject类时,我创建了一个初始值设定项,以便我可以将myObject添加到其中的ArrayList中。我让它工作起来了,但我遇到了问题,因为对象的属性正在被覆盖在循环代码时编写。下面是一个简化的示例: myOjbect newMyObject = new myObject List<my
myObject
的ArrayList
,它有自己的属性。当我创建myObject
类时,我创建了一个初始值设定项,以便我可以将myObject
添加到其中的ArrayList
中。我让它工作起来了,但我遇到了问题,因为对象的属性正在被覆盖在循环代码时编写。下面是一个简化的示例:
myOjbect newMyObject = new myObject
List<myOject> listOfObjects = new ArrayList<myObjet>();
try {
// go through a text file, set some properties of my object...
myArrayValue = some text input //(sorry i didnt want to put the whole code as its sloppy, but it does return an array)
myObject.matrix = myArrayValue; // this value changes as I go through the text file, but in the listOfObects, only the last value is saved to each item in the list
SetStartDate(somestring1); // another constructor/initializer (sorry i forget the correct terminology) I added to the 'myObject' class. This property sets correctly in the list
listOfObjects.add(new myObject(newMyObject));
因此,startDate
属性起作用,当我循环遍历项目列表时,但当我设置矩阵
属性时,我总是以主脚本中的最后一个属性值作为列表中每个项目的属性值
你知道为什么startDate
属性工作正常,而矩阵(它是一个数组变量)工作不正常吗
感谢您复制数组元素而不是保存数组对象的引用,您可以这样做
matrix = Arrays.copyOf(other.matrix, other.matrix.length);
这个公共myObject(myObject-other)你在做什么
?发送同一类的对象并生成另一个对象??参数化构造函数是发送值并初始化其变量。发布您的实际代码将有助于了解问题所在。-
循环一些代码,设置我的对象的一些属性…此循环中有哪些代码?我们需要更多详细信息以了解answ呃,这个问题。关于你的代码实际上是什么以及它实际上在做什么的信息太多了,如果没有实际的源代码,我们将错过这些信息。这怎么可能是一个答案呢?我们甚至不知道矩阵实际上是什么!为什么你认为他们在谈论所有内容时都试图复制数组关于是ArrayList
?@Makoto,“矩阵(是一个数组变量)”我猜他是在尝试用C++编写的拷贝构造函数编码技术。很显然,问题是,它的矩阵数组没有被保存。请你帮我提一下我哪里出错了?谢谢,我想这是个问题。虽然它是一个很深的数组,所以我需要把它循环一遍。
matrix = Arrays.copyOf(other.matrix, other.matrix.length);