C# 使用多个属性重用一个方法
最近我遇到了这个编程问题。我想多次重复使用这个“平均”方法,但使用不同的整数属性。我试着在网上冲浪,寻找类似的东西,但什么也没找到。 所以我想请你帮个小忙。也许你可以给我一些更有用的建议,或者这种解决问题的方式根本不适合这种情况C# 使用多个属性重用一个方法,c#,properties,C#,Properties,最近我遇到了这个编程问题。我想多次重复使用这个“平均”方法,但使用不同的整数属性。我试着在网上冲浪,寻找类似的东西,但什么也没找到。 所以我想请你帮个小忙。也许你可以给我一些更有用的建议,或者这种解决问题的方式根本不适合这种情况 public double CountAverage(NameOfTheProperty) { double Average = 0; double Amount = 0; foreach (Athlete athlete in this.At
public double CountAverage(NameOfTheProperty)
{
double Average = 0;
double Amount = 0;
foreach (Athlete athlete in this.Athletes)
{
Amount += athlete.NameOfTheProperty;
}
return Average;
}
通常这是通过一个函数来解决的。在您的情况下,已经有一个LINQ函数可以执行此操作(称为
Average
),但要向您展示它的工作原理:
public double CountAverage(Func<Athlete, double> func)
{
double Average = 0;
double Amount = 0;
foreach (Athlete athlete in this.Athletes)
{
Amount += func(athlete);
}
return Amount / this.Athletes.Count;
}
LINQ版本:
double d = this.Athletes.Average(a => a.NameOfProperty);
double d = this.Athletes.Average(a => a.NameOfProperty);