我有一个简单的结构:
public struct Coord
{
public Coord (int Row, int Column )
{ /* set values */ }
public int Row { get; }
public int Column { get; }
}
给定:
int [ , ] myArray;
IEnumerable<Coord> myCoords;
我想选择具有最小值的坐标并返回该坐标。 我可以通过以下方式获得最小值:
int val = myCoords.Min(c => myArray[c.Row, c.Col]);
如何才能返回“坐标”?
最佳答案
遗憾的是,您无法在普通的 LINQ to Objects 中轻松完成此操作。您可以找到最小值,然后找到具有该值的坐标
,但显然这意味着要检查数据两次。
Coord minCoord = myCoords.MinBy(c => myArray[c.Row, c.Col]);
关于c# - 如何从.Min扩展方法获取对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6927123/