본문 바로가기

코딩테스트

프로그래머스 코딩테스트 날짜 비교하기 java

날짜 비교하기 JAVA

 

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

 

프로그래머스

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

programmers.co.kr

 

 

문제설명 : 정수 배열 date1과 date2가 주어집니다. 두 배열은 각각 날짜를 나타내며 [year, month, day] 꼴로 주어집니다. 각 배열에서 year는 연도를, month는 월을, day는 날짜를 나타냅니다. 만약 date1이 date2보다 앞서는 날짜라면 1을, 아니면 0을 return 하는 solution 함수를 완성해 주세요.

 

내가 작성한 코드 : 

import java.time.LocalDate;

class Solution {
    public int solution(int[] date1, int[] date2) {
        int answer = 0;
        
        LocalDate localDate1 = LocalDate.of(date1[0], date1[1], date1[2]);
        LocalDate localDate2 = LocalDate.of(date2[0], date2[1], date2[2]);
        
        //answer =  localDate1.isAfter(localDate2) ? 0 : 1 ;
        
        if(!localDate1.isEqual(localDate2) && localDate1.isBefore(localDate2) ){
            answer=1;
        }
        
        return answer;
    }
}

 

자바에서 Date를 쓰지 말라했던 기억이 나는 것 같은데 가물가물하여, 찾아보다가 명확하게 정리한 블로그 발견!! 감사합니다~ ^^

 

LocalDate.of로 원하는 날짜로 생성하고, isEqual과 isBefore로 두 날짜를 비교해 값을 answer에 담았다!

 

 

참고 블로그 : https://java119.tistory.com/52

 

[Java] LocalDate,LocalTime,LocalDateTime 총 정리

아직도!!!!!!!!!!!!!! Calender나 Date를 사용하려는 혹은 사용하고 있는 저 같은분들을 위해 준비한 글입니다. Java 8 부터 java.time(joda.time) api 출시 됐기 때문에, Java version 8 이상만 가능합니다. Java 시간

java119.tistory.com

 

728x90
300x250