본문 바로가기

개발/JAVA

오늘 날짜와 임의의 날짜를 비교

날짜 비교

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");

Date applyDate = dateformat.parse("20200101");
Calendar appDate = Calendar.getInstance();
Calendar today = Calendar.getInstance();

appDate.setTime(applyDate);

int dateCompare = today.compareTo(appDate);

if( dateCompare >= 0 ){
       //시작일이 오늘과 같거나 오늘보다 이전일 때
}

 

번외 GPT

: 코드를 개선해줘 

import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class DateComparisonExample {
    public static void main(String[] args) {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
        
        try {
            Date applyDate = dateFormat.parse("20200101");
            Calendar today = Calendar.getInstance();

            if (today.getTime().compareTo(applyDate) >= 0) {
                System.out.println("시작일이 오늘과 같거나 오늘보다 이전입니다.");
            } else {
                System.out.println("시작일이 오늘보다 미래입니다.");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

1. appDate Calendar 객체를 제거하고 today.getTime().compareTo(applyDate)을 사용하여 직접 오늘 날짜와 시작일을 비교하도록 변경되었습니다.
2. 예외 처리에 Exception을 사용하여 모든 예외 상황을 처리하도록 변경되었습니다.