c# 赋值相关
List<String> a = new List<String>();
List<String> b = a;
如上代码,a和b指向的是同一个地址,对b进行操作时a也会改变。
现在想实现的就是赋值之后,对b的操作不会改变a 的值,也就是a和b指向的是不同的地址。
求解,,谢谢了
------解决方案--------------------List<string> b = new List<string>(
a);
------解决方案--------------------List<String> a = new List<String>();
var arr = new string[a.Count];
a.CopyTo(arr);
List<string> b = arr.ToList();
------解决方案--------------------一个个赋值不行吗?
List<String> lsta = new List<String>();
List<String> lstb = new List<String>();
lsta.ForEach(x => lstb.Add(x));
------解决方案--------------------x =>listb.Add(new string(x));
------解决方案--------------------你既然要实现b的操作不会改变a 的值,也就是a和b指向的是不同的地址,那你为何要把a和b关联起来,分开不就行了么