코딩테스트/프로그래머스
[JAVA] 날짜 비교하기
Initsave
2024. 4. 7. 09:30
오.... +13 ?? 기준은 모르겠지만 기분은 좋은 스타트!@
import java.util.*;
class Solution {
public int solution(int[] date1, int[] date2) {
Date d1 = new Date(date1[0],date1[1],date1[2]);
Date d2 = new Date(date2[0],date2[1],date2[2]);
return d1.compareTo(d2) < 0 ? 1 : 0;
}
}
구현한 Date 타입으로 했지만 아무래도 LocalDate 타입이 성능적으로 더 뛰어났다!!
import java.time.LocalDate;
class Solution {
public int solution(int[] date1, int[] date2) {
LocalDate dateA = LocalDate.of(date1[0], date1[1], date1[2]);
LocalDate dateB = LocalDate.of(date2[0], date2[1], date2[2]);
if (dateA.isBefore(dateB)) {
return 1;
} else {
return 0;
}
}
}
한줄 풀이..
import java.time.LocalDate;
class Solution {
public int solution(int[] date1, int[] date2) {
return LocalDate.of(date1[0], date1[1], date1[2])
.isBefore(LocalDate.of(date2[0], date2[1], date2[2])) ? 1 : 0;
}
}
다음에 Date를 사용할때는 LocalDate 메서드 확인하고 하도록...습관을!!
https://download.java.net/java/GA/jdk14/docs/api/java.base/java/time/LocalDate.html
LocalDate (Java SE 14 & JDK 14)
All Implemented Interfaces: Serializable, Comparable , ChronoLocalDate, Temporal, TemporalAccessor, TemporalAdjuster public final class LocalDate extends Object implements Temporal, TemporalAdjuster, ChronoLocalDate, Serializable A date without a time-zone
download.java.net