具有两个对象的数组的平均值

时间:2013-06-19 19:05:56

标签: c# arrays average

(我不知道是否应该将它们称为对象或元素,如果输入错误的名称,请对不起。)

我有这个数组:

data[] readings; 

如果我想要值,我使用以下(i =某个位置):

readings[i].value;

如果我想要日期:

readings[i].date;

如何使用平均方法获得value中所有readings的平均值?

3 个答案:

答案 0 :(得分:2)

你可以使用linq,这是

的内容
var average = readings.Average(r => r.value);

注意:平均值计算一系列数值的平均值。 MSDN链接:http://msdn.microsoft.com/en-us/library/system.linq.enumerable.average.aspx

答案 1 :(得分:1)

如果data.value是数字类型,您可以使用Linq的Average扩展方法,如下所示:

var averageValue = readings.Average(d => d.value);

要获得DateTime的平均值,如果您首先计算时间,则可以执行相同的操作:

var averageDate = new DateTime((long)readings.Average(d => d.date.Ticks));

答案 2 :(得分:0)

尝试使用Linq查询:

readings.Select(r => r.value).ToList().Average();