Java中可以使用System.currentTimeMillis()或者System.nanoTime()来记录程序的执行时间。
使用System.currentTimeMillis()方法:long startTime = System.currentTimeMillis();// 程序主体代码long endTime = System.currentTimeMillis();long elapsedTime = endTime - startTime;System.out.println("程序执行时间(毫秒):" + elapsedTime);使用System.nanoTime()方法:long startTime = System.nanoTime();// 程序主体代码long endTime = System.nanoTime();long elapsedTime = endTime - startTime;System.out.println("程序执行时间(纳秒):" + elapsedTime);这两种方法的区别在于精度和可读性。System.currentTimeMillis()返回的是自1970年1月1日00:00:00 UTC到当前时间的毫秒数,精度为毫秒级别。而System.nanoTime()返回的是系统的纳秒数,精度更高,但由于返回的是相对时间,所以不具有可读性。
另外,如果需要多次记录程序执行时间,可以使用一个计时器类来封装上述代码。例如:
public class Timer {private long startTime;private long endTime;public void start() {startTime = System.nanoTime();}public void end() {endTime = System.nanoTime();}public long getElapsedTime() {return endTime - startTime;}}使用示例:
Timer timer = new Timer();timer.start();// 程序主体代码timer.end();System.out.println("程序执行时间(纳秒):" + timer.getElapsedTime()); 
