Calendar

조영민·2023년 3월 10일

java

목록 보기
9/24

Calendar 클래스는 Date 클래스와 마찬가지로 날짜와 시간을 다루는 클래스이다. Calendar 클래스가 새로 추가되면서 Date 대부분의 메소드는 deprecated 되어 잘 사용하지 않으나, 경우에 따라 Date 의 메소드를 그대로 사용하거나, 혹은 Calendar 클래스와 상호 변환하는 상황이 있다.

추상 클래스이기 때문에 직접 new 하여 객체 생성이 불가하고, Calendar.getInstance() 메소드를 이용하거나 Calendar 클래스를 상속받는 GregorianCalendar 클래스를 이용하여 객체를 생성할 수 있다.

Calendar today = Calendar.getInstance(); //객체 생성

Calendar 클래스의 주요 상수

제목 없음


import java.util.Calendar;

public class CalendarTest {

	public static void main(String[] args) {
		Calendar today = Calendar.getInstance();
		int year =today.get(Calendar.YEAR);
		System.out.println(today);
		System.out.println(year);
		System.out.println(today.get(Calendar.MONTH) + 1);  //0~11 이기 때문에 + 1
		System.out.println(today.get(Calendar.DATE));
		System.out.println(today.get(Calendar.HOUR_OF_DAY));
		System.out.println(today.get(Calendar.MINUTE));
		System.out.println(today.get(Calendar.SECOND));
		String []arr = {"일", "월", "화", "수", "목", "금", "토"};
		System.out.println(arr[today.get(Calendar.DAY_OF_WEEK)-1] + "요일");  //1~7 이기 때문에 - 1 
	}

}

실행결과

java.util.GregorianCalendar[time=1661264122218,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Seoul",offset=32400000,dstSavings=0,useDaylight=false,transitions=22,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2022,MONTH=7,WEEK_OF_YEAR=35,WEEK_OF_MONTH=4,DAY_OF_MONTH=23,DAY_OF_YEAR=235,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=11,HOUR_OF_DAY=23,MINUTE=15,SECOND=22,MILLISECOND=218,ZONE_OFFSET=32400000,DST_OFFSET=0]
2022
8
23
23
15
22
화요일

Calendar 클래스의 주요 메소드

제목 없음

gregoriancalendar 클래스

Calendar를 상속받기 때문에 생성자를 이용하면 객체 생성이 가능하다.

GregorianCalendar today = new GregorianCalendar(); //객체생성

isLeapYear 메소드를 사용하여 윤년을 확인할 수 있다.

if (today.isLeapYear(today.get(GregorianCalendar.YEAR)))
			System.out.println("윤년입니다.");
else
			System.out.println("윤년이 아닙니다.");
profile
노젓는 개발자

0개의 댓글