본문 바로가기
IT/JAVA

[JAVA] Java 코드 실행 시간(속도) 측정

by se-black 2024. 3. 6.

Java 프로그래밍을 하면서 내가 작성한 알고리즘이나 로직 등의 실행 속도를 측정하고 싶은 경우가 있다.

이때, System.currentTimeMillis()를 이용하여 속도를 측정할 수가 있다.

 

System.currentTimeMillis()
Java에서 기본적으로 제공하는 메소드로서, 현재 시간을 ms(밀리세컨드, 1/1000 초) 단위로 출력할 수 있다.
System.currentTimeMillis() 메소드는 1970년 1월 1일 UTC 시간 기준으로, 현재까지의 시간 차이를 ms(밀리세컨드, 1/1000 초) 단위로 출력한다.

따라서 시작 부분과 끝부분에 각각 해당 메소드를 써서 시간을 받아오고, 두 시간 간의 차이를 계산하면 ms 단위의 시간차를 구할 수 있다.

 

예제
// 시작 시간
long startTime = System.currentTimeMillis();

// === 측정할 코드 START ===
for(int i=0; i<1000; i++) {
    System.out.println(i);
    for(int j=0; j<1000; j++) {
        System.out.println(j);
    }
}
// === 측정할 코드 END ===

// 종료 시간
long endTime = System.currentTimeMillis();

// 실행 시간(ms)
long runTime = endTime - startTime;
System.out.println("실행 시간(ms): " + runTime);

// 실행 시간(sec) -> 초 단위로 변환
System.out.println("실행 시간(sec): " + runTime/1000);

 

[참고]

https://www.devkuma.com/docs/java/execute-time/

728x90

'IT > JAVA' 카테고리의 다른 글

[JAVA] 10진수 ↔ 2, 8, 16진수 변환 방법  (0) 2024.01.17