问题
创建一个集合 例如:List
List<int> list1 = new List<int> {1,2,3,4 }; //创建并填充集合
List<int> list2; //定义 list2
list2 = list1; //将lsit1 赋值到 list2中
list1.Clear();
原因
将 list1 赋值给 list2 的时候,实际并未将 list1 的内容复制 ,而是将 list1 的引用赋给了 list2。这意味着 list1 和 list2 指向同一个内存地址,修改一个集合会影响另一个集合。
解决方案
List<int> list2 = list1.ToList(); // 创建 list1 的副本
List<int> list2 = new List<int>(list1); // 创建 list1 的副本
标签:list1,List,list2,清空,集合,赋值
From: https://www.cnblogs.com/Life1357/p/18619679