Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
Tags
- java
- 사이드프로젝트
- 월간코드챌린지시즌1
- 해쉬맵
- 특정값 개수
- SpringBoot
- 경력기술
- 코딩문제
- groomide
- 동네도서관이용후기
- Decorator
- 강서구도서관
- 오류잡기
- 코딩문제풀이
- 무료로책보기
- goormIDE
- HashMap
- @observable
- MES
- 로봇 관련 윤리문제
- 1일1커밋
- 도서관대출
- LinkedList
- 전자도서관
- restapi
- 수포자
- mobx
- level1
- @action
- 프로그래머스
Archives
- Today
- Total
Maenya's Techlog
[20201215 코딩문제풀이] 2016년 (Lv1, 날짜객체, try-catch) 본문
문제 설명
2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까지 각각 SUN,MON,TUE,WED,THU,FRI,SAT
입니다. 예를 들어 a=5, b=24라면 5월 24일은 화요일이므로 문자열 TUE를 반환하세요.
제한 조건
- 2016년은 윤년입니다.
- 2016년 a월 b일은 실제로 있는 날입니다. (13월 26일이나 2월 45일같은 날짜는 주어지지 않습니다)
입출력 예
a b result
| 5 | 24 | TUE |
[해결 방안]
Date객체를 사용한다.
a, b를 2016년 date 형식에 끼워넣어 거기서 요일만 추출해내면 됨. So easy~
import java.util.*;
import java.text.*;
class Solution {
public String solution(int a, int b) {
String answer = "";
String inputStr = "2016-" + a + "-" + b; // format: yyyy-MM-dd
try { // parse()함수를 사용하려면 try-catch문을 사용해야 함.
Date strDate = new SimpleDateFormat("yyyy-MM-dd").parse(inputStr);
// System.out.println("date : " + strDate);
// print ex) Tue May 24 00:00:00 KST 2016
answer = strDate.toString().substring(0,3).toUpperCase();
// 대문자로 변환
} catch (Exception e) {
System.out.println(e);
}
return answer;
}
}
[사용된 skill]
toUpperCase() : 문자열을 대문자로 변환.
parse(String s) : 문자열을 date 형식으로 변환. try-catch문 필요
'개발자의 삶 > 코딩 문제풀이' 카테고리의 다른 글
| [20201216 프로그래머스] 가운데 글자 가져오기(Lv1, substring) (0) | 2020.12.18 |
|---|---|
| [20201217] 프로그래머스 - 같은 숫자는 싫어 (List to Array) (0) | 2020.12.18 |
| [20201214 프로그래머스] 두개뽑아서 더하기 (0) | 2020.12.18 |
| [20201210 코딩문제풀이] 전화번호 목록 (0) | 2020.12.11 |
| [20201209 코딩문제풀이] 완주하지 못한 선수 (0) | 2020.12.11 |