3

我想要一个允许我调用的计时器类:

.start()   .getElapsedTime()   .stop()   .reset()

Java是否有这样的类,或者我需要使用我自己的(我已经写过)。

从最佳实践的角度来看,如果存在 Java 类库类,我应该使用它们,但我不确定这个是否存在。

任何人都可以给我一个指向这个类的javadoc的链接,如果它存在的话?

4

3 回答 3

2

Apache Commons Lang 中有一个StopWatch类。

要启动手表,请调用start()。此时您可以:

  • split()手表在后台继续运行时获取时间。unsplit()将删除split. 此时,这三个选项再次可用。
  • suspend()手表暂停它。resume()允许手表继续。suspend和之间的任何时间resume都不会计入总数。此时,这三个选项再次可用。
  • stop()手表完成计时会话。

输出方法toString()getTime()应该只在stop,split或之后调用suspend,但是在其他点将返回合适的结果。

API 链接


关于使用库

是的,你绝对应该尽可能地尝试使用好的库,而不是重新发明轮子。一个设计良好、编写良好、测试良好的库的价值是不可逾越的,Java 有很多。它获得的用户越多,它就越成熟,任何问题通常都会很快得到解决。

相关问题

于 2010-06-15T07:28:09.267 回答
1

Java 有一个Timer类,但我想您正在寻找一个StopWatch或一个Chronometer。网络中有许多可用的这些实现。

于 2010-06-15T06:53:30.600 回答
-1

About java.util.Timer.scheduleAtFixedRate(), be aware of this bug: http://bugs.sun.com/view_bug.do?bug_id=4290274

于 2010-06-15T07:43:53.360 回答