0

小さな赤い円が表示されているパネルがあり、しばらくすると赤い円が黄色の円に置き換えられ、黄色の円が表示されたら、ユーザーはできるだけ早くパネルをクリックする必要があります。したがって、反応時間は、黄色の円が表示されてからユーザーが大きなパネルでクリックするまでのミリ秒単位の時間です。このテストは 5 回繰り返されます。

タイマーの開始と 5 つのテストの平均反応時間にjavax.swing.Timer使用して反応時間を計算するにはどうすればよいですか? System.currentTimeMillis()(これを使用する必要があります)

4

2 に答える 2

1

実行時間を計算するSystem.nanotime()には、代わりに使用することをお勧めしますSystem.currentTimeMillis() 詳細については、このリンクを参照してください

public static long nanoTime()

最も正確な使用可能なシステム タイマーの現在の値をナノ秒単位で返します。

このメソッドは、経過時間を測定するためにのみ使用でき、システム時間またはウォールクロック時間の他の概念とは関係ありません。返される値は、固定された任意の時間からのナノ秒を表します (おそらく将来であるため、値は負の可能性があります)。この方法はナノ秒の精度を提供しますが、必ずしもナノ秒の精度ではありません。値が変更される頻度については保証されません。約 292 年 (2 63ナノ秒) を超える連続する呼び出しの違いは、 数値のオーバーフローのため、経過時間を正確に計算できません。

于 2013-10-12T09:39:08.897 に答える
1

タイマーは、要件に対して不適切なツールです。円の色を変更したり、変更したときのタイムスタンプを保存したりするために使用します。次に、サークルのクリック リスナーに、保存されたタイムスタンプと現在のタイムスタンプを比較させます。

于 2013-10-12T09:49:01.020 に答える