>  기사  >  Java  >  System.currentTimeMillis() 메서드를 사용하여 Java에서 프로그램 실행 시간을 계산하는 방법

System.currentTimeMillis() 메서드를 사용하여 Java에서 프로그램 실행 시간을 계산하는 방법

WBOY
WBOY앞으로
2023-05-14 23:46:041867검색

Java에서 제공되는 System.currentTimeMillis() 메서드는 현재 컴퓨터 시간을 가져오는 데 사용됩니다. 시간 표현 형식은 현재 컴퓨터 시간과 1970년 1월 1일 0:00의 GMT 시간(그리니치 표준시)의 차이입니다. 00 밀리초.

System.currentTimeMillis() 메서드의 반환 유형은 long 이며, 이는 현재 시간을 밀리초 단위로 나타냅니다.

개발 과정에서 많은 사람들은 일반적으로 현재 시간을 얻기 위해 new Date()를 사용하는 데 익숙합니다. new Date()가 수행하는 작업은 실제로 System.currentTimeMillis() 메서드를 호출하는 것입니다. 밀리초 수만 필요한 경우 new Date() 대신 System.currentTimeMillis()를 사용할 수 있으며 이는 더 효율적입니다.

【예제】String 유형과 StringBuilder 유형의 문자열을 연결하는 데 소요되는 시간을 계산합니다.

/**
 * Java使用System.currentTimeMillis()方法计算程序运行时间
 * @author pan_junbiao
 **/
public class CurrentTimeTest
{
    /**
     * 使用String类型拼接字符串耗时
     */
    public static void testString()
    {
        String s = "Hello";
        String s1 = "World";
        long start = System.currentTimeMillis();
        for(int i=0; i<10000; i++)
        {
            s+=s1;
        }
        long end = System.currentTimeMillis();
        long runTime = (end - start);
        System.out.println("使用String类型拼接字符串耗时:" + runTime + "毫秒");
    }
 
    /**
     * 使用StringBuilder类型拼接字符串耗时
     */
    public static void testStringBuilder()
    {
        StringBuilder s = new StringBuilder("Hello");
        String s1 = "World";
        long start = System.currentTimeMillis();
        for(int i=0; i<10000; i++)
        {
            s.append(s1);
        }
        long end = System.currentTimeMillis();
        long runTime = (end - start);
        System.out.println("使用StringBuilder类型拼接字符串耗时:" + runTime + "毫秒");
    }
 
    public static void main(String[] args)
    {
        testString();
        testStringBuilder();
    }
}

실행 결과:

System.currentTimeMillis() 메서드를 사용하여 Java에서 프로그램 실행 시간을 계산하는 방법

추가 지식 포인트:

위 그림의 실행 결과에서 볼 수 있듯이 문자열을 접합하는 과정에서 String 개체 대신 StringBuilder 개체가 사용됩니다. 이는 String이 불변 개체이고 문자열이 변경될 때마다 새 String 개체가 생성되는 반면 StringBuilder는 String의 문자열 버퍼와 유사한 변경 가능한 문자 시퀀스이기 때문입니다. 따라서 문자열이 자주 수정되는 곳에서는 StringBuilder를 사용하는 것이 String보다 효율적입니다.

이와 관련된 실행 속도는 StringBuilder > StringBuffer >

스레드 안전성 측면에서 StringBuilder는 스레드로부터 안전하지 않지만 StringBuffer는 스레드로부터 안전합니다.

위 내용은 System.currentTimeMillis() 메서드를 사용하여 Java에서 프로그램 실행 시간을 계산하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제