【发布时间】:2020-02-26 17:31:36
【问题描述】:
在我的情况下,我有一个点列表,我想使用 linq 丢弃重复点的列表,其方式与 distinct 通常在项目列表中的工作方式类似。
我该怎么做? 这是一个代码 sn-p 可以更好地理解我的问题
var points = List<List<Point>>();
public struct Point: IEquatable<Point>
{
public Point(int x, int y)
{
this.X = x;
this.Y = y;
}
public int X { get; }
public int Y { get; }
}
谢谢
【问题讨论】:
-
嗯,你需要实际实现
IEquatable<T>接口..? -
为什么你的观点包含一个列表?
-
“我想丢弃重复点的列表” 这是阴暗的解释。你的意思是一个独特的点列表?你的意思是唯一的点列表?
-
尝试以下操作: public Boolean Equals(Point other) { return (this.X == other.X) && (this.Y == other.Y); }
-
我建议添加一些带有预期输出的示例输入,以使您的问题更加清晰。