개발/JAVA
[JAVA] 날짜 비교 하기 (Date, LocalDateTime, LocalDate)
zuzuu
2021. 12. 21. 13:39
반응형
1. java.util.Date에는 날짜를 비교할 수 있는 메소드가 두가지 있다.
- after, before 사용
- before: 인자보다 과거일 때 true
- after: 인자보다 미래일 때 true
- equal: 인자와 같을 때 true
public void compareDate(Date date1, Date date2){
if(date1.after(date2)){
System.out.println("Date1 > Date2");
}
if(date1.before(date2)){
System.out.println("Date1 < Date2");
}
if(date1.equals(date2)){
System.out.println("Date1 = Date2");
}
}
- compareTo 사용
- compareTo > 0 : 인자보다 미래일 때
- compareTo < 0 : 인자보다 과거일 때
- compareTo = 0 : 인자와 같을 떄
public void compareDate2(Date date1, Date date2){
if (date1.compareTo(date2) > 0) {
System.out.println("Date1 > Date2");
}
if(date1.compareTo(date2) < 0){
System.out.println("Date1 < Date2");
}
if(date1.compareTo(date2) == 0){
System.out.println("Date1 = Date2");
}
}
2. java.time.LocalDateTime, LocalDate, LocalTime, ZonedDateTime (java 1.8부터 사용 가능)
- isBefore : 인자보다 과거일 때 true
- isAfter : 인자보다 미래일 때 true
- isEqual : 인자와 같을 때 true
public void compareDate3(LocalDateTime date1, LocalDateTime date2) {
if (date1.isBefore(date2)) {
System.out.println("Date1 < Date2");
}
if (date1.isAfter(date2)) {
System.out.println("Date1 > Date2");
}
if (date1.isEqual(date2)) {
System.out.println("Date1 = Date2");
}
}
728x90
반응형