我正在尝试使用列表列表。如何从列表中删除特定元素?我有以下代码:
using System;
using System.Collections.Generic;
namespace TEST3
{
class MainClass
{
public static void Main (string[] args)
{
List<List<int>> ar = new List<List<int>> ();
List<int> innerAr = new List<int> ();
for (int i = 1; i <= 9; i++)
{
innerAr.Add (i);
}
for (int j = 0; j <= 80; j++)
{
ar.Add (innerAr);
}
ar[80].RemoveAt(7);
ar[80].RemoveAt(2);
Console.WriteLine (ar[80].Count);
Console.WriteLine (ar[79].Count);
}
}
}
for (int j = 0; j <= 80; j++)
{
ar.Add (innerAr);
}
ar
现在,中的所有元素都包含对的相同引用innerAr
。您一直只添加一个列表ar
,因此当您以后innerAr
通过访问进行更改时ar[80]
,您还将更改innerAr
所有其他元素的(因为它是相同的列表)。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。.否则否则了。
如果要独立列表,则需要为每个ar
项目创建一个:
List<List<int>> ar = new List<List<int>>();
for (int j = 0; j <= 80; j++)
{
List<int> innerAr = new List<int>();
for (int i = 1; i <= 9; i++)
{
innerAr.Add(i);
}
ar.Add(innerAr);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句