代码示例:
public class Stu
{
public string Name { get; set; }
public string Age { get; set; }
}
var listA = new List<Stu>
{
new Stu {Name = "AAA", Age = "22"},
new Stu {Name = "BBB", Age = "23"},
new Stu {Name = "CCC", Age = "24"},
};
1、List之间赋值
(1)两个list之间可以直接赋值,可以直接等于,但是因为指向是同一地址,两者会互相影响,一个改变,另一个也会改变
例:var listB=listA
// listC.AddRange(listA);
(2)list直接赋值,又想不互相影响,假如想要第一个集合的值,只能把第一个list遍历出来,add到第二个list中
var listB=new List<Stu>();
foreach (var T in listA)
{
listB.Add(new Stu {Name = T.Name,Age=T.Age});
}
foreach (var T in listB)
{
T.Name = T.Name + "1";
}
//listB里的Name 值改变了,listA的Name还是之前的!