【发布时间】:2019-07-14 07:20:34
【问题描述】:
我正在尝试从此 2D 列表中删除示例重复条目。
我已经尝试过使用.Distinct().ToList() 中突出显示的一维列表的.Distinct().ToList() 方法,但在这里它似乎对我不起作用。
到目前为止我的代码:
List<List<float>> xyvertices = new List<List<float>>();
xyvertices.Add(new List<float>());
yvertices[0].Add(2);
xyvertices[0].Add(4);
for (int a = 1; a < 6; a++)
{
xyvertices.Add(new List<float>());
xyvertices[a].Add(a+1);
xyvertices[a].Add(a+3);
}
xyvertices = xyvertices.Distinct().ToList();
Console.WriteLine("count:" + xyvertices.Count + "\n");
for (int i =0; i<xyvertices.Count; i++)
{
Console.WriteLine(xyvertices[i][0]);
Console.WriteLine(xyvertices[i][1]);
Console.WriteLine();
}
Console.ReadLine();
上面的代码运行但没有任何变化。
我怎样才能做到这一点?谢谢
【问题讨论】:
-
对于您的情况
List<List<float>>中的非标准列表(或数组),您必须实现IEqualityComparer -
我正在寻找输出列表为 2D,与输入格式相同
-
@Cgameworld 帮助我们 - 分享您期望的输出
-
@Mureinik 预期的输出是只有一个 (2,4) 的副本,它被添加了两次。
-
虽然我同意你的看法,但“没有任何变化”的描述并不是对问题的一个很好的陈述。
标签: c# generic-list