有没有办法找出哪种方法花费的时间最多?Eclipse Java

有没有办法找出哪种方法花费的时间最多?Eclipse Java,java,android,eclipse,adt,timing,Java,Android,Eclipse,Adt,Timing,我正在为Android编写一个小Java游戏,我想知道Eclipse中是否有可能找出执行哪个方法花费的时间最多。这取决于您要测试什么 如果您为Android开发应用程序,您应该试用TimingLogger类。请看一看TimingLogger帮助程序类的使用说明 这是一个非常好的工具,也有一个 如果您不想使用外部工具,而是一种非常标准的方法来测量经过的时间,则必须使用System.nanoTime()。你不应该使用currentTimeMillis,因为它测量的是墙上的时钟时间ans,因为没有一台

我正在为Android编写一个小Java游戏,我想知道Eclipse中是否有可能找出执行哪个方法花费的时间最多。

这取决于您要测试什么

如果您为Android开发应用程序,您应该试用TimingLogger类。请看一看TimingLogger帮助程序类的使用说明

这是一个非常好的工具,也有一个

如果您不想使用外部工具,而是一种非常标准的方法来测量经过的时间,则必须使用System.nanoTime()。你不应该使用currentTimeMillis,因为它测量的是墙上的时钟时间ans,因为没有一台计算机的时钟是完美的(它们偶尔都需要校正)。有一个进程运行并不断地对系统时钟进行小的校正。更不用说闰秒修正了

虽然经常使用currentTimeMillis,但测量经过的时间和计时仍然是不正确的。无论如何,由于调用需要一些时间,您不应该期望正确地计算非常小的时间间隔。但这不应该是Android的问题

我将向您展示一个示例:

long startTime = System.nanoTime();

// run/call the method

long endTime = System.nanoTime();
long diff = lEndTime - lStartTime;
System.out.println("Elapsed milliseconds: " + difference/1000000);

您也可以看看这个免费库:

使用像JVisualVM这样的分析器,或者只在方法的开始和结束处记录时间戳。