1

이 질문에는 이미 답변이 있습니다.

나는이 방법을 우연히 발견했다.

public static Date getNowDate() {
    final Calendar cal = new GregorianCalendar();
    cal.setTime(new Date());
    return cal.getTime();
}

이것은 다음과 같이 호출됩니다.

getNowDate().getTime()

이건 그냥 전화하는 것과는 다른거야?

System.currentTimeMillis()

?


3 답변


2

성능을 제외하고는 모두 동일합니다.

System.currentTimeMillis ()는 시스템 호출이므로 약 0.1 ~ 0.3 마이크로 초가 소요됩니다 (OS에 따라 다름)

new Date ()는 0.1 ~ 0.3 마이크로 초 정도의 시간이 소요되는 객체도 생성합니다.그러나 작은 쓰레기를 만듭니다.

Calendar.getInstance ()는 값 비싼 객체 세트를 만들고33마이크로 초.


3

결과로 반환되는 long (millis) 값의 차이는 없습니다.

현재 날짜를 원한다면 더 간단한 방법이 될 것입니다. 달력에서 날짜를 설정하고 다시 검색합니다.getNowDate()다음과 같이 단순화 할 수 있습니다.

public static Date getNowDate() {
  return new Date();
}


  • 나는 효율성의 수단에 차이가 있는지 궁금해. - overbet13

0

나는생각하지 마라.이 둘 사이에는 어떤 차이가 있습니다.결과의 형태로, 둘 다 1970 년 1 월 1 일부터 날짜까지 거슬러 올라가는 긴 값을 리턴 할 것이기 때문이다.

단순히 전화를 걸어도Date d = new Date();의지현재 날짜를 알려줘.과 부름d.getTime();의지긴 repersentation을 반환

연결된 질문


관련된 질문

최근 질문