计算按钮点击之间的平均时间

时间:2014-04-11 18:27:41

标签: c# arrays winforms for-loop

我在C#中使用此Windows窗体应用程序,因此当您多次单击此按钮时,它会计算您每秒的平均点击次数。

我昨天刚开始学习C#,唯一擅长的语言是Lua。在Lua中,这很简单,只需使用表格,因为它们非常动态和灵活。我不知道如何在C#中做到这一点,MSDN文章让我感到困惑。

如何在点击之间存储时间?阵列?我没有线索。这是我到目前为止的按钮点击功能

private void button1_Click(object sender, EventArgs e)
{

    //DO STUFF

}

1 个答案:

答案 0 :(得分:6)

您可以存储每次点击的时间,然后计算它们之间的平均时间:

private List<DateTime> clickTimes = new List<DateTime>();
private void button1_Click(object sender, EventArgs e)
{
    this.clickTimes.Add(DateTime.Now);

    if (this.clickTimes.Count > 2)
    {
         double averageSeconds = this.clickTimes.Zip(this.clickTimes.Skip(1), (a,b) => (b-a).TotalSeconds)).Average();

         // Do something with the average seconds between each click here
    }
}