给定以下来自 Microsoft 示例的代码:
public class EngineMeasurementCollection : Collection<EngineMeasurement>
{
public EngineMeasurementCollection()
{
Add(new EngineMeasurement { Speed = 1000, Torque = 100, Power = 20 });
Add(new EngineMeasurement { Speed = 2000, Torque = 160, Power = 60 });
Add(new EngineMeasurement { Speed = 3000, Torque = 210, Power = 125 });
Add(new EngineMeasurement { Speed = 4000, Torque = 220, Power = 160 });
Add(new EngineMeasurement { Speed = 5000, Torque = 215, Power = 205 });
Add(new EngineMeasurement { Speed = 6000, Torque = 200, Power = 225 });
Add(new EngineMeasurement { Speed = 7000, Torque = 170, Power = 200 });
}
}
public class EngineMeasurement
{
public int Speed { get; set; }
public int Torque { get; set; }
public int Power { get; set; }
}
如何获得速度或扭矩或功率的最小/最大值。我需要这个来在我正在做的图表上设置比例(准确地说是 WPF 工具包图表)。我想我可以在 EngineMeasurementCollection 中有一个方法,它遍历每个 EngineMeasurement 并查看功率(或速度),但我怀疑有更简单的方法吗?Collection 类确实有某种 Min 方法,但请注意,我不是试图获得集合的最小值(我不确定在这种情况下这意味着什么),而是特定属性的最小值(例如速度)。我确实看到了 Collection.Min 与仿函数的使用。那里有什么可以做的吗?还是与Linq?我对所有方面都感兴趣。谢谢,戴夫
奖金问题(也许这对我来说很明显,对于最小/最大的答案)。有哪些选项可以决定一个值(例如 Speed 是否已经在集合中)。从这个例子中并不清楚,但如果你已经有了给定自变量的一些数据(例如时间),你就不再需要了。那么有没有像 Collection.Contains(“指定你感兴趣的属性”)这样的东西?