1. Date
- java.util.Date - JDK1.0 부터 제공
- Date 객체 생성방법
- public class Date implements java.io.Serializable, Cloneable, Comparable<Date>
Date d = new Date();
/* 생성자
public Date()
public Date(long date)
public Date(int year, int month, int date)
public Date(int year, int month, int date, int hrs, int min)
public Date(int year, int month, int date, int hrs, int min, int sec)
public Date(String s)
*/
- Date클래스 메서드
- 주의사항 : year는 1900년을 기준으로 세기 때문에 1900을 빼야함.
월 : 0(1월) ~ 11(12월)
| 메서드 | 설명 |
| long parse( String s ) | 문자열을 읽어와 |
| int getXXX() | XXX필드에 저장된 값을 반환 |
| int setXXX( int xxxx ) | XXX 필드를 특정값으로 저장 |
| boolean before( Date when ) | 현재 Date 인스턴스가 전달된 객체가 나타내는 시간보다 이전인지를 확인함 |
| boolean after( Date when ) | 현재 Date 인스턴스가 전달된 객체가 나타내는 시간보다 나중인지를 확인함 |
| boolean equals( Object obj ) | 현재 Date 인스턴스가 전달된 객체가 나타내는 시간과 일치한지를 확인함 |
| int compareTo( Date anotherDate ) | 현재 Date 인스턴스가 전달된 객체가 나타내는 시간과 일치한지를 확인함 (-정수, 0, 정수) |
| String toLocaleString() | 현재위치가 갖는 포맷으로 문자열 반환 |
| String toGMTString() | d MMM yyyy HH:mm:ss 'GMT' 포맷으로 문자열 반환 |
2. Calendar
- java.util.Calendar - JDK1.1 부터 제공
- Calendar 객체 생성방법
- Calendar는 추상 클래스로 직접 생성자를 사용해서 인스턴스를 생성할 수 없다.
- 지역마다 쓰는 달력이 다르기 때문에, Calendar는 추상클래스로 만들어 졌다.
- public abstract class Calendar implements Serializable, Cloneable, Comparable<Calendar>
// [1]
Calendar c = Calendar.getInstance();
// [2]
Calendar c = new GregorianCalendar();
[1] 번은 Calendar의 static method인 getInstance()를 사용하여 Calendar 객체를 생성했다.
[2]번에서 사용한 GregorianCalendar는 Calendar를 상속받아 만들어진 전국 표준 달력이다.
Calendar를 상속받았기 때문에 업캐스팅이 가능하다.
( public cladd GregorianCalendar extends Calendar )
- Calendar의 filed와 method
| 필드 | 값 |
| YEAR | 년 |
| MONTH | 월 : 0(1월) ~ 11(12월) |
| DATE | 일 |
| DAY_OF_MONTH | 해당 월의 몇일째 인가 |
| DAY_OF_YEAR | 해당 년의 몇일째인가 |
| HOUR | 0~11 |
| HOUR_OF_DAY | 0~23 |
| MINUTE | 분 |
| SECOND | 초 |
| MILLISECOND | 밀리초 |
| DAY_OF_WEEK | 1(일요일) ~ 7(토요일) |
| WEEK_OF_MONTH | 해당 월의 몇번째 주인가 |
| WEEK_OF_YEAR | 해당 년의 몇번째 주인가 |
| 메서드 | 설명 |
| void add( int field, int amount ) | 전달된 Calendar 필드에서 특정 시간 만큼을 더함 |
| boolean after( Object when ) | 현재 Calendar 인스턴스가 전달된 객체가 나타내는 시간보다 나중인지를 확인함 |
| boolean before( Object when ) | 현재 Calendar 인스턴스가 전달된 객체가 나타내는 시간보다 이전인지를 확인함 |
| void clear( int field ) | 현재 Calendar 인스턴스의 모든 필드의 값을 undefined로 설정함 |
| int get( int field ) | 전달된 Calendar 필드에 저장된 값을 반환함 |
| void roll( int field, int amount ) | 전달된 Calendar 필드에서 특정 시간 만큼을 더하거나 뺌 add와의 차이점 : roll은 다른 필드에 영향을 미치지 않음 |
| void set( int field, int value ) void set( int year, int month, int date ) void set( int year, int month, int date, int hourOfDay, int minute ) void set( int year, int month, int date, int hourOfDay, int minute, int second ) |
전달된 Calendar 필드를 특정 값으로 설정함 |
| Date getTime() | 현재 Calendar 인스턴스의 시간 정보를 나타내는 Date 인스턴스를 생성하여 반환함 |
| static Calendar getInstance() | 시스템의 현재 날짜와 시간으로 Calendar 인스턴스를 생성하여 반환함 |
https://process-y.tistory.com/28
[ JAVA ] Date to Calendar / Calendar to Date
1. Calendar to Date Calendar c = Calendar.getInstance(); // [1] Date today = new Date( c.getTimeInMillis() ); // [2] Date today = c.getTime(); 2. Date to Calendar Date today = new Date(); Calendar c = Calendar.getInstance(); c.setTime(today);
process-y.tistory.com
https://process-y.tistory.com/31
[ JAVA ] java.time
1. java.time JDK1.8 부터 제공 - Java version 8 이상 사용 가능 날짜, 시간을 다루는 기능이 구현된 클래스 하위 패키지 java.time.chrono : 표준(ISO)이 아닌 달력 시스템을 위한 클래스 제공 java.time.format : 형
process-y.tistory.com
'Back-End > Java' 카테고리의 다른 글
| [ JAVA ] Collection (0) | 2023.08.17 |
|---|---|
| [ JAVA ] java.time (0) | 2023.08.15 |
| [ JAVA ] Date to Calendar / Calendar to Date (0) | 2023.08.13 |
| [ JAVA ] 클래스간의 관계 1) has-a, DI(Dependency Injection) (0) | 2023.08.02 |
| [ JAVA ] 메서드(함수) (0) | 2023.07.23 |