- Date 클래스
지역화가 되어있지 않음
import java.text.SimpleDateFormat;
import java.util.*;
public class dateExam {
public static void main(String[] args) {
Date date = new Date();
System.out.println(date.toString());
SimpleDateFormat ft = new SimpleDateFormat("yyyy.MM.dd 'at' hh:mm:ss a zzz");
System.out.println(ft.format(date));
System.out.println(date.getTime());
long today = System.currentTimeMillis();
System.out.println(today);
}
}
기본 생성자로 Date의 인스턴스를 만들게 되면 현재 시간과 날짜 정보를 인스턴스가 가지게 됨.
System.out.println(date.toString()); 의 결과, Thu Feb 24 12:28:51 KST 2022
java.text.SimpleDateFormat 클래스를 이용해서 원하는 형태로 출력할 수 있음
SimpleDateFormat ft = new SimpleDateFormat("yyyy.MM.dd 'at' hh:mm:ss a zzz");
여기서 yyyy는 년, MM은 월, dd는 일을 나타낸다.
hh는 시간, mm은 분, ss는 초를 나타내며 a는 오전/오후를 나타낸다.
zzz는 TimeZone을 나타낸다. 한국은 KST가 해당하는 값이다.
System.out.println(date.getTime());
long today = System.currentTimeMillis();
System.out.println(today);
현재 시간을 Long 값으로 구하는 2가지 방법이다.
- Calendar
Calendar 클래스는 추상클래스이다. 그러므로 인스턴스를 직접 만들 수 없으며
인스턴스를 생성하려면 Calendar가 가지고 있는 클래스 메소드인 getInstance를 사용해야함.
getInstance 메소드를 호출하면 내부적으로 java.util.GregorianCalendar 인스턴스를 만들어서 리턴하게 됨. GregorianCalendar 는 Calendar의 자식 클래스이다.
import java.util.Calendar;
public class Calendarexam {
public static void main(String[] args) {
Calendar cal = Calendar.getInstance();
System.out.println(cal.get(Calendar.YEAR));
System.out.println(cal.get(Calendar.MONTH)+1); // 월은 0부터 시작함
System.out.println(cal.get(Calendar.DATE));
System.out.println(cal.get(Calendar.HOUR)); // 12시간으로 나눠 표현
System.out.println(cal.get(Calendar.HOUR_OF_DAY)); // 24시간으로 표현
System.out.println(cal.get(Calendar.MINUTE));
cal.add(Calendar.HOUR, 5); // 원하는 시간만큼 늘리기
System.out.println(cal.get(Calendar.HOUR)); // +5 된 시간을 출력함
}
}
- java.time 패키지
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.Month;
public class TimeExam {
public static void main(String[] args) {
LocalDateTime timePoint = LocalDateTime.now();
System.out.println(timePoint);
LocalDate ld1 = LocalDate.of(2012, Month.DECEMBER, 12);
System.out.println(ld1);
LocalTime lt1 = LocalTime.of(17, 18);
System.out.println(lt1);
LocalTime lt2 = LocalTime.parse("10:15:30");
System.out.println(lt2);
LocalDate theDate = timePoint.toLocalDate();
System.out.println(theDate);
Month month = timePoint.getMonth();
System.out.println(timePoint.getMonth());
System.out.println(month.getValue());
}
}
LocalDateTime timePoint = LocalDateTime.now(); now로 현재 시간을 구할 수 있다.
LocalTime lt1 = LocalTime.of (17, 18); 17시 18분에 대한 LocalTime객체를 구함.
LocalTime lt2 = LocalTime.parse("10:15:30"); 10시15분30초 라는 LocalTime 객체를 구함.
LocalDate theDate = timePoint.toLocalDate(); timePoint를 LocalDate로 바꿈
Month month = timePoint.getMonth(); timePoint에서 달을 얻어서 month에 넣음
System.out.println(month.getValue()); 달을 숫자로 표현함
'Java > Java의 정석' 카테고리의 다른 글
220228 Java - Thread (0) | 2022.02.28 |
---|---|
220225 Java - IO (0) | 2022.02.25 |
220223 Java - Collection Framework (0) | 2022.02.23 |
220222 Java - 참조, 제네릭+Collections framework (0) | 2022.02.23 |
220221 Java - 중급 및 복습 (0) | 2022.02.21 |