|
|
1
7
我假设cr是一个对象。您不会每次都创建一个新的CR,所以在ArrayList中有两次相同的引用,因此当您第二次修改它时,实际上是在处理同一个对象。 |
|
|
2
2
您正在更改
|
|
|
3
1
问题是变量cr在循环中的两次都是相同的,所以在循环中的两次都修改了同一个对象,并且将同一个对象添加到arraylist中两次。 您没有显示足够的代码来显示CR的声明位置。 你需要做点什么吗
|
|
|
4
1
CR对象有克隆函数吗? 如果是这样,应该这样做:
|
|
|
5
0
因为cr没有得到一个新的语句(我不知道cr的类型,或者我会向您展示),所以您只是不断地添加相同的引用。如果要向caseRecordItems添加新的cr项,则需要执行cr=new typeofcr();否则,您只是一次又一次地重写同一对象。 编辑: 一定要在你的循环里做新的 |
|
|
6
0
如果您没有在for循环中创建cr(无论它是什么),那么每次在循环中都要反复修改同一个对象。您希望在for循环内创建一个新的CR实例。 |
|
|
7
0
假设cr是一个类,您将需要在每次通过循环时创建该类的新实例,比如cr=new crclassname(); 原因是,添加到caseRecordItems中的是指向对象的指针,而不是对象的副本——这就是为什么当您在第二次传递时更改它时,第一个值似乎也会更改。 |
|
|
Dave · 如何在for循环中修改列表值 1 年前 |
|
|
BlurKid · R中for循环时结果的奇怪差异 1 年前 |
|
|
Rudraksh_pd · 取炭。通过char。c中创建字符串的输入 1 年前 |
|
|
Mtullis · 在我的表单值中循环遍历数组[重复] 1 年前 |
|
|
xhamsterIT · 循环VBA Microsoft Excel 2 年前 |