gpt4 book ai didi

c# - 包含不同类型变量的集合之间的交集

转载 作者:太空宇宙 更新时间:2023-11-03 18:48:06 25 4
gpt4 key购买 nike

假设我们有两个集合:

List<double> values
List<SomePoint> points

哪里SomePoint是一个包含点的三个坐标的类型:

SomePoint
{
double X;
double Y;
double Z;
}

现在,我想执行这两个集合之间的交集,以找出 points 中的哪些点z坐标等于 values 的元素之一

我创建了类似的东西:

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 的点值,但不同XY .有没有更好的方法呢?

最佳答案

你能不能不做

var query = (from d in values
join p in points
on d equals p.Z
select p).ToList();

?

关于c# - 包含不同类型变量的集合之间的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2647183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com