Back-end/Java

(JAVA) Date(), Calendar(), GregorianCalendar()

이안_ian 2018. 9. 14. 20:55
반응형

Date() 사용하기


가장 먼저 클래스를 import하는 작업이 필요하다


1. import java.util.Date; 이후 객체를 생성

2. Date d = new Date(); 원하는 포맷으로 출력을 한다.

3. SimpleDateFormat form = new SimpleDateFormat("yyyy-MM-dd");


System.out.println("오늘 날짜 : "+form.format(d));



Calendar 사용하기


방식은 위에 Date와 비슷하다


1. import java.util.Calendar;

2. Calendar cal = Calendar.getInstance();


int year = cal.get(Calendar.YEAR);

int mon= cal.get(Calendar.MONTH);

int day = cal.get(Calendar.DAY_OF_MONTH);

int hour = cal.get(Calendar.HOUR_OF_DAY);

int min = cal.get(Calendar.MINUTE);

int sec = cal.get(Calendar.SECOND);



GregorianCalendar 사용하기


1. import java.util.Calendar;

2. Calendar cal = new GregorianCalendar();

3. SimpleDateFormat form = new SimpleDateFormat("yyyy년 MM월 dd일 aa hh시 mm분 ss초");

4. String date = form.format(cal.getTime());

5. System.out.println(date);


전체적으로 Date와 Calendar가 합쳐진 느낌으로 사용 가능하다.




참고 자료)


Calendar cal= Calendar.getInstance()


//24시간 기준으로 시간을 구한다. 

System.out.println("Calendar.HOUR_OF_DAY...."+ cal.get(Calendar.HOUR_OF_DAY)); 


//12시간 기준으로 시간을 구한다

System.out.println("Calendar.HOUR...."+ cal.get(Calendar.HOUR)); 


// 날짜를구함

System.out.println("Calendar.DAY_OF_MONTH..."+cal.get(Calendar.DAY_OF_MONTH)); 

System.out.println("Calendar.DATE..."+ cal.get(Calendar.DATE)); 



//오늘이 이번주의 몇번째 날인지 구함. 일요일이 1, 월요일은 2..

System.out.println("Calendar.DAY_OF_WEEK..."+ cal.get(Calendar.DAY_OF_WEEK)); 


//이번주의 요일이 이번달의 몇번째 요일인지 구함

System.out.println("Calendar.DAY_OF_WEEK_IN_MONTH..."+cal.get(Calendar.DAY_OF_WEEK_IN_MONTH ));


//1년중에 오늘이 몇번째 날인지 구함

System.out.println("Calendar.DAY_OF_YEAR..."+ cal.get(Calendar.DAY_OF_YEAR)); 


//월의 몇번째 주인지구함

System.out.println("Calendar.WEEK_OF_MONTH..."+ cal.get(Calendar.WEEK_OF_MONTH)); 


 //년도를 구함

System.out.println("Calendar.YEAR...."+ cal.get(Calendar.YEAR)); 


//월 구함, 1월이 0임, 2월:1, 3월:2.....

System.out.println("Calendar.MONTH...."+ cal.get(Calendar.MONTH)); 



아래는  날짜정보를 세팅하는 method이다.


 //오늘날짜에서 5일후날짜 구하기

cal.add(Calendar.DATE, 5);

System.out.println("5일후....."+cal.getTime());


 //오늘날짜에서 3개월 후 날짜 구하기

cal.add(Calendar.MONTH,3);

System.out.println("3개월 후....."+cal.getTime());


 //오늘날짜에서 3개월 전 날짜 구하기

cal.add(Calendar.MONTH,-3);

System.out.println("3개월 전....."+cal.getTime());

//날짜 세팅 

//예) 2011년 2월11일 16시30분56초 세팅


cal.set(Calendar.YEAR,  2011);

cal.set(Calendar.MONTH,  Calendar.FEBRUARY);

cal.set(Calendar.DATE,  11);

cal.set(Calendar.HOUR_OF_DAY,  16);

cal.set(Calendar.MINUTE,  30);

cal.set(Calendar.SECOND,  56);

System.out.println("년월일 세팅....."+cal.getTime());

//2011년 2월11일 주의 일요일날짜 구함

cal.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);

System.out.println("년월일 세팅2....."+cal.getTime());



출처: http://pandorica.tistory.com/18 [판도리카의 꿈]

반응형