일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- 자바
- 설치
- 연락처 프로그램
- jQuery
- 파일 입출력
- String
- html
- spring
- 데이터베이스
- 연산자
- 오라클
- GUI
- 상속
- JavaScript
- jsp
- Method
- css
- array
- File 클래스
- property
- Event
- Java
- springframework
- list
- kotlin #return #jump
- 코틀린#클래스#상속
- 윈도우 #단축키
- function
- javaservlet
- 다형성
- Today
- Total
Binary World
JAVA CLASS : Date ,Calendar 클래스 본문
<Date, Calendar 클래스>
* 시스템의 시간 정보를 통해 날짜, 시간 등을 출력할수 있게 해주는 클래스
* java.util 패키지에 포함
<프로그램 코드>
* DateMain01.java (Date 클래스의 기본 생성자, 형태)
package edu.java.date01; import java.util.Date; public class DateMain01 { public static void main(String[] args) { // 시스템의 현재 시간 정보 Date date = new Date(); //java.util System.out.println(date); System.out.println(date.getTime());
System.out.println(); // 1970년 1월 1일 0시 0분 0초를 기준(0)으로 삼아서 // milli-second(1/1000초)마다 1씩 증가시킨 값 Date date2 = new Date(0L); System.out.println(date2); Date date3 = new Date(1000L); System.out.println(date3);
// 더이상 사용하지 않는(deprecated) 생성자 Date date4 = new Date(2017-1900, 0, 6); //2017-01-06 // 자바는 월을 배열처럼 0부터 시작하기 때문에 1월을 출력하면 0으로 시작해야함 // 직선이 그어져 있는 메소드는 오라클에서 언제든지 없앨 수 있는 메소드 System.out.println(date4);
} } |
* 출력화면
Fri Jan 06 13:20:17 KST 2017 1483676417975 Thu Jan 01 09:00:00 KST 1970 Thu Jan 01 09:00:01 KST 1970 Fri Jan 06 00:00:00 KST 2017 |
* DateMain02.java (날짜를 원하는 형식으로 출력)
package edu.java.date02; import java.text.SimpleDateFormat; import java.util.Date; public class DateMain02 { public static void main(String[] args) { // 날짜를 원하는 형식(format)으로 출력 Date currentDate = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 날짜 출력 형식 변환 String dateString = sdf.format(currentDate); // 문자열 형태로 저장 System.out.println(dateString);
sdf = new SimpleDateFormat("yy-MM-dd hh:mm:ss"); dateString = sdf.format(currentDate); System.out.println(dateString);
} // end main() } // end class DateMain02 |
* 출력화면
2017-01-06 13:22:37 17-01-06 01:22:37 |
* DateMain03.java (Calendar, GragorianCalendar 클래스)
package edu.java.date03; import java.util.Calendar; public class DateMain03 { public static void main(String[] args) { // Calendar, GragorianCalendar 클래스 // |__ GragorianCalendar: Calendar의 자식 클래스 Calendar cal = Calendar.getInstance(); // GragorianCalendar의 인스턴스(현재 시간)를 생성하고 리턴 System.out.println(cal);
// Calendar 인스턴스에서 날짜와 시간 정보 추출 int year = cal.get(Calendar.YEAR); System.out.println("year: " + year); int month = cal.get(Calendar.MONTH) + 1; System.out.println("month: " + (month)); // MONTH: 1월(0) ~ 12월(11)
int day = cal.get(Calendar.DAY_OF_MONTH); System.out.println("day: " + day); // DAY: 1 ~ 31
int hour = cal.getMaximum(Calendar.HOUR); System.out.println(hour); // HOUR: 12시간 단위, HOUR_OF_DAY: 24시간 단위
int minute = cal.get(Calendar.MINUTE); System.out.println("minute: " + minute);
int second = cal.get(Calendar.SECOND); System.out.println("second: " + second);
String dateString = String.format("%d/%d/%d %d:%d:%d", year, month, day, hour, minute, second); System.out.println(dateString); } // end main() } // end class DateMain03 |
* 출력화면
java.util.GregorianCalendar[time=1483676580988,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=2017,MONTH=0,WEEK_OF_YEAR=1,WEEK_OF_MONTH=1,DAY_OF_MONTH=6,DAY_OF_YEAR=6,DAY_OF_WEEK=6,DAY_OF_WEEK_IN_MONTH=1,AM_PM=1,HOUR=1,HOUR_OF_DAY=13,MINUTE=23,SECOND=0,MILLISECOND=988,ZONE_OFFSET=32400000,DST_OFFSET=0] year: 2017 month: 1 day: 6 11 minute: 23 second: 0 2017/1/6 11:23:0 |
* DateMain04.java ( Calendar 객체를 이용해서 특정 날짜/시간으로 객체 생성)
package edu.java.date04; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; public class DateMain04 { public static void main(String[] args) { // Calendar 객체를 이용해서 특정 날짜/시간으로 객체 생성 Calendar cal = new GregorianCalendar(2017, 1, 6); // new GregorianCalendar(year, month, day) // (주의) month: 0 ~ 11 int year = cal.get(Calendar.YEAR); int month = cal.get(Calendar.MONTH); int day = cal.get(Calendar.DAY_OF_MONTH); String str = String.format("%d-%02d-%02d", year, month, day); System.out.println(str);
System.out.println(); // Calendar 객체 -> Date 객체로 변환 // -> SimpleDateFormat을 사용하는 방법 Calendar birth = new GregorianCalendar(1993, 0, 11); // 1993-1-11 Date date = birth.getTime(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); String birthString = sdf.format(date); System.out.println(birthString); } // end main() } // end class DateMain04 |
* 출력화면
2017-01-06 1993/01/11 00:00:00 |
'개발자의 길 > JAVA' 카테고리의 다른 글
JAVA CLASS : BigIntger, BigDecimal 클래스 (0) | 2017.01.06 |
---|---|
JAVA CLASS : Wrapper 클래스 (0) | 2017.01.06 |
JAVA CLASS : String, StringBuffer, StringBuilder (0) | 2017.01.05 |
JAVA CLASS : 인터페이스(Interface) (0) | 2017.01.04 |
JAVA CLASS : 상속(final, abstract) (0) | 2017.01.03 |