[JAVA] Calendar class 사용해서 날짜 가져오기

2021. 5. 13. 22:12·프로그래밍 언어/Java
반응형
package bitcamp3.day04;

import java.util.*;

public class Calendar1 {
   public static void main(String[] args) {
      /*
       * Calendar : 날씨, 시간 -> 일정관리
       * Date : 
       */
      
      //Calendar cal = new GregorianCalendar();
      
      Calendar cal = Calendar.getInstance();
      
      //오늘 날짜 취득(getter)
      int year = cal.get(Calendar.YEAR);
      int month = cal.get(Calendar.MONTH);
      int day = cal.get(Calendar.DATE);
      
      System.out.println(year + "년" + month + "월" + day + "일");
      
      //cal.set(Calendar.YEAR, 2021);
      //cal.set(Calendar.MONTH, 5);
      //cal.set(Calendar.DATE, 8);     --> 아래에서 SWITCH문 출력시 SET한 날짜로 나와서 주석
      
      year = cal.get(Calendar.YEAR);
      month = cal.get(Calendar.MONTH);
      day = cal.get(Calendar.DATE);
      
      System.out.println(year + "년" + month + "월" + day + "일");
      
      // 오전/오후
      String ampm = cal.get(Calendar.AM_PM)==0? "오전" : "오후";
      //                        (조건)?"true":"false"
                              //원래는 int형 return 오전 0, 오후 1
      System.out.println(ampm);
      
      //요일 1(일) ~ 7(토)
      int weekday = cal.get(Calendar.DAY_OF_WEEK);
      switch(weekday) {
      case 1:
         System.out.println("일요일");
         break;
      case 2:
         System.out.println("월요일");
         break;
      case 3:
         System.out.println("화요일");
         break;
      case 4:
         System.out.println("수요일");
         break;
      case 5:
         System.out.println("목요일");
         break;
      case 6:
         System.out.println("금요일");
         break;
      case 7:
         System.out.println("토요일");
         break;
      }
      
      int lastday = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
      System.out.println("이번달의 마지막 날:"+lastday);
      
      int lastday2 = cal.getActualMinimum(Calendar.HOUR_OF_DAY);
      System.out.println(lastday2);
      
      
   }

}

Calender 객체를 사용하기 위해서 Calendar.getInstance(); 를 사용합니다.

1) 오늘 날짜 얻기
cal.get(Calendar.?)을 이용해서 현재 YEAR, MONTH, DATE를 int형으로 반환받을 수 있습니다.

2) 원하는 날짜 설정
cal.set(Calendar.MONTH, 5-1)을 이용해서 YEAR, MONTH, DATE를 직접 설정할 수 있습니다.
여기서 주의할점은 MONTH의 경우 0~11입니다. (즉, 0일 경우 1월) 이기 때문에 내가 원하는 값이 5월이면 6 - 1을 통해서 설정하는 것을 권장합니다.

3) AM_PM
String ampm = cal.get(Calendar.AM_PM)==0? "오전" : "오후";
cal.get(Calendar.DAY_OF_WEEK)을 이용하며, AM_PM의 값을 얻어옵니다. 
반환 값은 int형이며 AM = 0, PM = 1 값을 반환합니다.

4) 요일 얻기
cal.get(Calendar.DAY_OF_WEEK)
int형으로 반환되며, 1(일) ~ 7(토)입니다.
4인 경우 수요일이겠죠?

5) 이번 달의 마지막 날 찾기
cal.getActualMaximum(Calendar.DAY_OF_MONTH) 를 통해서 이번 달의 마지막 날을 int형 정수로 반환받을 수 있습니다.

 

 

반응형
저작자표시 (새창열림)

'프로그래밍 언어 > Java' 카테고리의 다른 글

[JAVA] 오버로딩 vs 오버라이딩  (0) 2021.05.19
[JAVA] 피보나치 수열 간단하게 구현  (2) 2021.05.13
[JAVA] String class 자주사용하는 메서드  (0) 2021.05.13
[JAVA] 랜덤 숫자 중복제거 쉽게 이해하기!  (0) 2021.05.10
[JAVA] 변수정리 #멤버변수? 지역변수? 기본형? 참조형?  (0) 2021.04.22
'프로그래밍 언어/Java' 카테고리의 다른 글
  • [JAVA] 오버로딩 vs 오버라이딩
  • [JAVA] 피보나치 수열 간단하게 구현
  • [JAVA] String class 자주사용하는 메서드
  • [JAVA] 랜덤 숫자 중복제거 쉽게 이해하기!
:j
:j
ddongjunn@gmail.com
  • :j
    dev.j
    :j
  • 전체
    오늘
    어제
    • :j
      • 프로그래밍 언어
        • Java
        • html
        • JavaScript
        • XML
        • JSON
        • CSS
        • jQuery
        • Web
        • k8s
        • JPA
      • 프레임워크
        • Spring
      • 코딩 테스트
        • Java
      • 네트워크
        • CCNA
      • 데이터베이스
        • Mssql
        • Oracle
      • 회고
      • :j story
      • CS
  • 블로그 메뉴

    • 홈
    • 태그
    • github
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    id
    지역변수
    Queue
    class
    멤버변수
    항해솔직후기
    group by
    항해백앤드
    항해플러스
    항해플러스백앤드
    항해플러스백엔드
    <br>
    다형성
    MSSQL
    Name
    항해99
    오버라이딩
    오버로딩
    HAVING
    appendChild
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
:j
[JAVA] Calendar class 사용해서 날짜 가져오기
상단으로

티스토리툴바