본문 바로가기
IT, 개발/JAVA

JAVA 날짜 시간 비교하기 예제 (Date - before, after)

by 개발자스터디 2022. 5. 31.
반응형

 

 

프로그램을 개발할 때 시간에 관련해서 뭔가를 작업할 때가 많습니다.

스케줄이나 타이머 관련된 일을 진행할 때 주로 쓰곤 했는데, 그래서 그럴 때 간단하게 시간을 비교할 수 있는 함수를 알아보도록 하겠습니다.

시간 비교 함수

함수 안에 비교할 기준점을 넣어서 비교합니다(사진에서 Date when 부분에).

 

얼핏 보면 헷갈릴 수도 있지만 직접 작성해서 한두 번 해보면 금방 적응할 수 있습니다.

Date의 before(), after()로 시간을 비교하는 예제를 사용해서 테스트해보시기 바랍니다.

 

date1, date2를 만들어서 비교하였는데, date1보다 date2가 1시간 30분 미래로 설정하였습니다.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.text.SimpleDateFormat;
import java.util.Date;
 
 
public void dateTest()
{
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    try 
    {
        Date date1 = sdf.parse("2022-05-05 14:00");
        Date date2 = sdf.parse("2022-05-05 15:30");
 
        System.out.println(date1);
        System.out.println(date2);
 
        // before()
        // after()
        boolean beforeFlag = date1.before(date2);
        System.out.println("date1 가 date2 보다 과거인가? : " + beforeFlag);
 
        boolean afterFlag = date2.after(date1);
        System.out.println("date2 가 date1 보다 미래인가? : " + afterFlag);
 
 
        // 같은 날 같은 시간인지 확인하기 
        boolean equalFlag = date1.equals(date2);
        System.out.println("date1 과 date2 는 동일한 시간인가? : " + equalFlag);
    } 
    catch (ParseException e1) 
    {
        // TODO Auto-generated catch block
        e1.printStackTrace();
    }
}
cs

 

 

 

결과

Thu May 05 14:00:00 KST 2022
Thu May 05 15:30:00 KST 2022
date1 가 date2 보다 과거인가? : true
date2 가 date1 보다 미래인가? : true
date1 과 date2 는 동일한 시간인가? : false

 

 




728x90
반응형