본문 바로가기
Java

[Java] 날짜 비교 메소드 - after() / before() / equals()

by ZIAHO 2023. 3. 8.

after() / before() / equals()는 두 날짜를 비교하는 메소드입니다.

Date 타입의 변수에서 사용이 가능하며, 밀리초 단위로 변환 후 비교합니다.

 

- date1.after(date2) : date1이 date2보다 이후이면 true를 반환합니다.

- date1.before(date2) : date1이 date2보다 이전이면 true를 반환합니다.

- date1.equals(date2) : date1이 date2와 같으면 true를 반환합니다.


예제 코드

        String date1 = "20230110";
        String date2 = "20230301";
        String yyyy1 = date1.substring(0, 4); // 2023
        String yyyy2 = date2.substring(0, 4); // 2023
        String mmdd1 = date1.substring(4, 8); // 0110
        String mmdd2 = date2.substring(4, 8); // 0301

        DateFormat format = new SimpleDateFormat("MMdd");

        Date fdate1 = format.parse(mmdd1); // Sat Jan 10 00:00:00 KST 1970
        Date fdate2 = format.parse(mmdd2); // Sun Mar 01 00:00:00 KST 1970

        String yyyy = "";
        if(fdate1.after(fdate2)) {
            System.out.println("fdate1이 fdate2보다 이후이면");
            yyyy = Integer.toString(Integer.parseInt(yyyy1) + 2);
            System.out.println(yyyy);
        } else if(fdate1.before(fdate2)) {
            System.out.println("fdate1이 fdate2보다 이전이면");
            yyyy = Integer.toString(Integer.parseInt(yyyy1) + 1);
            System.out.println(yyyy);
        }

결과

fdate1(1월 10일)이 fdate2(3월 1일)보다 이전이므로 fdate1.before(fdate2) 조건문을 타게되고,

yyyy1인 2023에 1을 더하게 되어 yyyy : 2024가 출력됩니다.


출처

[Java] - 자바 날짜 비교 메서드 [before(), after(), equals()] 사용법 (tistory.com)

 

[Java] - 자바 날짜 비교 메서드 [before(), after(), equals()] 사용법

#자바 날짜 비교 메서드 [before(), after(), equals()] 사용법 -Java에서 두 날짜를 비교하는 메서드이다. -before(): date값이 주어진 date보다 이전이면 true 반환한다. -after(): date값이 주어진 date보다 이후이

pingfanzhilu.tistory.com

 

'Java' 카테고리의 다른 글

컬렉션(Collection) - Map  (0) 2021.10.20
컬렉션(Collection) - Set  (0) 2021.10.20
컬렉션(Collection) - List  (0) 2021.10.12
추상(Abstract)  (0) 2021.10.05
다형성(polymorphism)  (0) 2021.09.30