IT/Java

[Java] 코드의 실행 시간 측정

Huitopia 2024. 3. 29. 00:38
728x90

시간 측정 도구 간단 정리

 

TIL/Java/시간_측정_도구.md at main · huitopia/TIL

📝 Today I Learned. Contribute to huitopia/TIL development by creating an account on GitHub.

github.com

 

System.currentTimeMillis() & System.nanoTime() 활용

public class CodeRunTime {
    public static void main(String[] args) {
        long millsStart = System.currentTimeMillis();
        long nanoStart = System.nanoTime();

        for (int i = 0; i < 1000000; i++) {
            System.out.println(i);
        }

        long millsEnd = System.currentTimeMillis();
        long nanoEnd = System.nanoTime();

        long codeRunTime1 = millsEnd - millsStart;
        long codeRunTime2 = nanoEnd - nanoStart;

        System.out.println("### currentTimeMillis ### ");
        System.out.println(codeRunTime1 + "m/s");
        System.out.println((codeRunTime1 / 1000) + "sec");

        System.out.println("### nanoTime ###");
        System.out.println(codeRunTime2 + "n/s");
        System.out.println((codeRunTime2 / 1000000000) + "sec");
    }
}

실행 시간을 측정하고 싶은 코드의 시작 구간종료 구간에 각각 해당 함수를 사용해 시간을 받는다.

두 시간 사이의 차이를 계산하여 결과값을 얻으며, 초 단위로 변환하고 싶으면 /1000 또는 /1000000000 를 해주면 된다.

728x90