c#二维LIST赋值问题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_42310470/article/details/102595222

发现了c#二维list一个小问题和解决方法
问题描述
我定义了一个二维List:
List<List> c = new List<List>();//csdn int显示不出来…
我想向其中添加元素,所以定义了一个:List b = new List();
然后呢,添加c.Add(b );
之后,我把b.Clear()了,目的是从新给b 赋值,但是c中的元素也被清空了。就很奇怪…暂时想到重新new b解决了赋值问题,不过不太明白为什么…留下此贴,以待将来
一开始的方式 直接b.Clear()
for (int i = 0; i < total; i++)
{
for (int j = 0; j < flynumber; j++)
{
if (pre[j] == a[i])
b.Add(j);
}
c.Add(b);
b.Clear;
}

能达到预期效果的方式 重新new b
for (int i = 0; i < total; i++)
{
for (int j = 0; j < flynumber; j++)
{
if (pre[j] == a[i])
b.Add(j);
}
c.Add(b);
b = new List();
}

猜你喜欢

转载自blog.csdn.net/qq_42310470/article/details/102595222
今日推荐