我正在使用一个集合类,其中我将使用数组列表来迭代添加对象详细信息。
但是以下语句的问题是:
InvoiceList.Add(objInvoice);
每次迭代添加objInvoice项目时,invoiceList中的所有内部列表项都将由上一次读取的objInvoice替换。
[0]-由上次读取的objInvoice值替换
[1]-由上次读取的objInvoice值替换
可能是什么原因?
我检查了之间的任何objInvoice初始化。但是没有。我完全对这种情况感到困惑。
提前致谢
希望有帮助
最佳答案
您很可能正在创建一个objInvoice项目,并将其重复添加到同一列表中。在这种情况下,每次引用都是相同的,因此您有一个项目列表,每个项目都引用相同的objInvoice。
您需要确保对于每次迭代,都创建并填充一个新的objInvoice项目。然后,您会看到每个项目在列表中出现的方式都不同。