본문 바로가기

Java/프로그래머스

[JAVA] 프로그래머스 - 날짜 비교하기

https://school.programmers.co.kr/learn/courses/30/lessons/181838

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

 

 

정답 

 

 

import java.time.LocalDate;

class Solution {
    public int solution(int[] date1, int[] date2) {
        int answer = 0;
        
        LocalDate d1 = LocalDate.of(date1[0],date1[1],date1[2]);
        LocalDate d2 = LocalDate.of(date2[0],date2[1],date2[2]);
        
        if(d1.isEqual(d2))
        {
            answer = 0;
        }
        
        if(d1.isBefore(d2))
        {
            answer = 1;
        }
        else
        {
            answer = 0;
        }
    
        return answer;
    }
}

 

 

날짜 비교하기 (LocalDate, LocalDateTime)

 

[Java] 날짜 비교하기 ( LocalDate, LocalDateTime, Date, Calendar) - 어제 오늘 내일 (tistory.com)

 

[Java] 날짜 비교하기 ( LocalDate, LocalDateTime, Date, Calendar)

Java API를 이용하여 날짜와 시간을 다루는 방법을 알아보고 있습니다. [Java] 현재 날짜, 현재 시간 구하기 [Java] 문자열을 날짜로 변환하기 (Date, LocalDateTime) [Java] 특정 날짜의 요일 구하기 (숫자, 영

hianna.tistory.com

 

 

1) LocalDate

 

public boolean isAfter(ChronoLocalDate other)
출처: https://hianna.tistory.com/611 [어제 오늘 내일:티스토리]

 

- 주어진 날짜가, 파라미터로 전달받은 날짜보다 클 경우 true를 리턴

 

public boolean isBefore(ChronoLocalDate other)
출처: https://hianna.tistory.com/611 [어제 오늘 내일:티스토리]

 

- 주어진 날짜가, 파라미터로 전달받은 날짜보다 작을 경우 true를 리턴 

 

public boolean isEqual(ChronoLocalDate other)
출처: https://hianna.tistory.com/611 [어제 오늘 내일:티스토리]

 

- 주어진 날짜가, 파라미터로 전달받은 날짜와 같을 경우 true를 리턴

 

public int compareTo(ChronoLocalDate other)
출처: https://hianna.tistory.com/611 [어제 오늘 내일:티스토리]

 

- 주어진 날짜가, 파라미터로 전달받은 날짜와 같을 경우 0, 파라미터로 전달받은 날짜보다 클 경우 양수, 파라미터로 전달받은 날짜보다 작을 경우 음수를 리턴 

 

 

2) LocalDateTime

 

public boolean isAfter(ChronoLocalDateTime<?> other)
public boolean isBefore(ChronoLocalDateTime<?> other)
public boolean isEqual(ChronoLocalDateTime<?> other)
public int compareTo(ChronoLocalDateTime<?> other)
출처: https://hianna.tistory.com/611 [어제 오늘 내일:티스토리]

 

- LocalDate 클래스와 마찬가지로 날짜와 시간 비교를 위해 위와 같은 메소드를 사용할 수 있다. 

- LocalDateTime의 isAfter(), isBefore(), isEqual(), compareto() 메소드는 날짜와 시간단위까지 비교