Ram*_*esh 0 .net generics collections
List<Person> allPersons= ReadallPersons()
Person aPerson=allPersons[0];
aPerson.Name="test1";
allPersons.Add(aPerson)
Run Code Online (Sandbox Code Playgroud)
allPersons有一个单人对象,我将该人物对象分配给'aPerson'对象.只需将人名重命名为'test1'并再次将其添加到列表中.
现在,如果我们检查列表,则两个人的对象的名称都被指定为'test1'.
这有什么问题?
我们怎么能解决这个问题呢?
您需要制作该对象的副本.您只是复制对同一对象的引用.所以两个条目都指向同一个人.
如果Person实现IClonable,您可以调用Clone(),修改克隆并将其添加到列表中.
| 归档时间: |
|
| 查看次数: |
68 次 |
| 最近记录: |