-
날짜 클래스 (자바 8 이후)Java 2023. 6. 27. 00:44
LocalDate
로컬 날짜 클래스
LocalDate nowDate = LocalDate.now(); LocalDate date = LocalDate.of(int year, int month, int dayOfMonth)
- now() : 기본 시간대의 시스템 시계에서 현재 날짜를 가져옴
- of() : 년, 월, 일에서 인스턴스를 가져옴
LocalDate nowDate = LocalDate.now(); LocalDate date = LocalDate.of(2023, 1, 1); System.out.println(nowDate); System.out.println(date);
2023-06-26 2023-01-01
LocalTime
로컬 시간 클래스
LocalTime nowTime = LocalTime.now(); LocalTime time = LocalTime.of(int hour, int minute, int second, int nanoOfSecond)
- now() : 기본 시간대의 시스템 시계에서 현재 시간을 가져옴
- of() : LocalTime시간, 분, 초 및 나노초에서 인스턴스를 가져옴
LocalTime nowTime = LocalTime.now(); LocalTime time = LocalTime.of(12, 26, 2, 9); System.out.println(nowTime); System.out.println(time);
18:31:02.982530500 12:26:02.000000009
LocalDateTime
로컬 날짜 및 시간 클래스
LocalDateTime nowDateTime = LocalDateTime.now(); LocalDateTime dateTime = LocalDateTime.of(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond);
- now() : 기본 시간대의 시스템 시계에서 현재 날짜-시간을 가져옴
- of() : 년, 월, 일, 시, 분, 초 및 나노초에서 인스턴스를 가져옴
LocalDateTime nowDateTime = LocalDateTime.now(); LocalDateTime dateTime = LocalDateTime.of(2023, 1, 1, 12, 26, 2, 9); System.out.println(nowDateTime); System.out.println(dateTime);
2023-06-26T18:49:04.183542 2023-01-01T12:26:02.000000009
ZonedDateTime
ISO-8601 캘린더 시스템에서 타임존의 날짜/시간
ZonedDateTime nowZone = ZonedDateTime.now(); System.out.println(nowZone);
2023-06-26T22:23:25.631014900+09:00[Asia/Seoul]
ZoneId
타임존 ID
- getAvailableZoneIds() : 사용 가능한 타이존 ID들 가져옴
- from() : 시간 객체에서 타임존 ID를 가져옴
- of() : 유효한 타임존 ID인지 판별
ZonedDateTime nowZone = ZonedDateTime.now(ZoneId.of("America/Los_Angeles")); System.out.println(nowZone);
2023-06-26T06:44:57.322317600-07:00[America/Los_Angeles]
DateTimeFormatter
날짜 포맷 변경
LocalDate nowdate = LocalDate.now(); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd"); String formatStr = nowdate.format(formatter); System.out.println(formatStr); String str = "2023년 01월 01일 12시 26분 02초"; DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy년 MM월 dd일 HH시 mm분 ss초"); LocalDateTime localDateTime = LocalDateTime.parse(str, dateTimeFormatter); System.out.println(localDateTime);
2023/06/27 2023-01-01T12:26:02
DayOfWeek
요일을 가져옴
LocalDate date = LocalDate.of(2023, 1, 1); DayOfWeek dayOfWeek = date.getDayOfWeek(); System.out.println(dayOfWeek); System.out.println(dayOfWeek.getValue());
SUNDAY 7
출처 :
https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html
https://scshim.tistory.com/251
'Java' 카테고리의 다른 글
Set (0) 2023.06.27 List (0) 2023.06.27 Map (0) 2023.06.26 slf4j log4j logback log4j2 (0) 2023.01.27 래퍼(Wrapper) 클래스 (0) 2023.01.01