코딩테스트 회고록/코테_Java

[JAVA] 프로그래머스 - 나이 출력

iamjisu 2023. 1. 31. 00:11

프로그래머스 코딩테스트 연습 입문 '나이 출력' 문제 입니다.

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

 

프로그래머스

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

programmers.co.kr


문제 설명

머쓱이는 40살인 선생님이 몇 년도에 태어났는지 궁금해졌습니다. 나이 age가 주어질 때, 2022년을 기준 출생 연도를 return 하는 solution 함수를 완성해주세요.

 

※ 저는 이번년도(2023년도)를 기준으로 문제를 풀었습니다.


⚠️ 제한사항 & 입출력 예

  • 0 < age ≤ 120
  • 나이는 태어난 연도에 1살이며 1년마다 1씩 증가합니다.
age (입력) return (출력)
40 1983
23 2000

✏️ 직접 구현한 코드

import java.time.LocalDate;

class Solution {
    public int solution(int age) {
        LocalDate datenow = LocalDate.now();
        int year = datenow.getYear();
        return year - age;
    }
}

🗣️ 코드 설명

  1. LocalDate 클래스를 이용해 현재 날짜를 받는 datenow 객체를 만들었습니다.
  2. datenow 객체를 이용해 현재 년도를 year 변수에 넣었습니다.
  3. 현재 년도를 가진 year변수에서 매개변수 age를 뺀 값을 return했습니다.

⭐ 새롭게 알게 된

LocalDate 클래스 == 로컬 날짜 클래스로 날짜 정보만 필요할 때 사용합니다.

// LocalDate 클래스 사용 예 (문법)

import java.time.LocalDate  // import 해줘야 함

// 로컬 컴퓨터의 현재 날짜 정보를 저장한 LocalDate 객체를 리턴
LocalDate Date1 = LocalDate.now();

// 파라미터로 주어진 날짜 정보를 저장한 LocalDate 객체를 리턴
LocalDate Date2 = LocalDate.of(2019,11,12);