1
假设我们有两个集合:包含不同类型变量的集合之间的交集
List<double> values
List<SomePoint> points
其中SomePoint
是包含该点的三个坐标的类型:
SomePoint
{
double X;
double Y;
double Z;
}
现在,我想执行这两个集合之间的交集来查找对于points
中的点z
坐标是values
的元素之一eqal我创建了类似的东西:
HashSet<double> hash = new HashSet<double>(points.Select(p=>p.Z));
hash.IntersectWith(values);
var result = new List<SomePoints>();
foreach(var h in hash)
result.Add(points.Find(p => p.Z == h));
但它不会返回这些具有相同Z
值的点,但不同的X
和Y
。有没有更好的方法呢?
谢谢!很棒! – Gacek 2010-04-15 16:46:02