C#时间平均值

本文关键字:平均值 时间 | 更新日期: 2023-09-27 18:25:37

我如何计算给定列表的平均值,其内容如下所述:

06:56
06:58
06:55
06:54
06:54
06:53
06:55
06:53
06:58
06:54
06:58
06:55
06:54
06:50
06:54
06:57

知道吗?!?

C#时间平均值

        var times = new List<string>
        {
            "06:56",
            "06:58",
            "06:55",
            "06:54",
            "06:54",
            "06:53",
            "06:55",
            "06:53",
            "06:58",
            "06:54",
            "06:58",
            "06:55",
            "06:54",
            "06:50",
            "06:54",
            "06:57"
        };
        var average = times
            .Select(TimeSpan.Parse)
            .Average(x => x.TotalMilliseconds);
        var averageTime = TimeSpan.FromMilliseconds(average);

将值转换为TimeSpan。您可以直接将输出作为正确的数据类型进行平均。

附录

将@gabba提供的字符串列表和上面使用记号的链接添加到答案中,您可以通过以下方式计算平均值:

TimeSpan average = new TimeSpan(Convert.ToInt64(times.Average(x => TimeSpan.Parse(x).Ticks)));

当然,结果值是相同的:06:54:52.500