List<List<int> > IntListList=new List<List<int>>();
List<int> IntList=new List<int>();
for (int i = 0; i < 8; i++)
{
IntList.Add(i);
}
IntListList.Add(IntList);
IntList.Clear();
for (int i = 0; i < 8; i++)
{
IntList.Add(i);
}
IntListList.Add(IntList);
IntList.Clear();
//执行完后IntListList将含有两个长度为0的List<int>,原因就是IntList.Clear(),
//导致添加的都变成空的List<int>
//也就是我们可以理解:IntListList.Add(IntList);只是添加了对IntList的引用,而没有真正的复制里面的元素
//所以我们应该这样做:
List<List<int>> IntListList = new List<List<int>>();
List<int> IntList1 = new List<int>();
List<int> IntList2 = new List<int>();
for (int i = 0; i < 8; i++)
{
IntList1.Add(i);
}
IntListList.Add(IntList1);
for (int i = 0; i < 8; i++)
{
IntList2.Add(i);
}
IntListList.Add(IntList2);
List<List<int> > IntListL