[JAVA 1.8↑] LocalDateTime, LocalDate, LocalTime

2020. 12. 11. 00:14·PROGRAMMING LANGUAGE/JAVA
목차
  1. LocalDate
  2. import할 패키지명
  3. 사용 예
  4. LocalDate 자료형 타입 변환
  5. LocalTime
  6. import할 패키지명
  7. 사용 예
  8. LocalDateTime
  9. import할 패키지명
  10. 사용 예
  11. LocalDateTime 자료형 타입 변환
  12. 시간 차이 계산
  13. DateTime 더하기
  14. Time 변경하기
728x90
반응형

LocalDate

import할 패키지명

import java.time.LocalDate;

사용 예

LocalDate currentDate = LocalDate.now();
// 현재 날짜가 넣어진 LocalDate 객체 리턴(예: 2020-12-10)

LocalDate startDate = LocalDate.of(2020,12,9);
// of 메소드의 파라미터로 넘어간 값에 따라 날짜 저장된 LocalDate 객체 리턴

LocalDate 자료형 타입 변환

LocalDate → String (YYYYMMdd)

LocalDate.of(2020,12,10).format(DateTimeFormatter.BASIC_ISO_DATE);

LocalDate → String (원하는 형식 - 예: yyyy-MM-dd)

LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));

LocalDate → LocatDateTime

LocalDate.now().atTime(11,34);

LocalTime

import할 패키지명

import java.time.LocalTime;

사용 예

LocalTime currentTime = LocalTime.now();
// 현재 시간이 넣어진 LocalTime 객체 리턴(예: 23:21:30)

LocalTime startTime = LocalTime.of(20,10,9);
// of 메소드의 파라미터로 넘어간 값에 따라 시간이 저장된 LocalTime 객체 리턴
// 이때, 파라미터가 4개가 넘어가야 하지만 마지막 자리가 ns라 따로 넘기지 않으면 0ns로 들어감

LocalDateTime

import할 패키지명

import java.time.LocalDateTime;

사용 예

LocalDateTime currentDateTime = LocalDateTime.now();
// 현재 날짜와 시간이 넣어진 LocalDateTime 객체 리턴(예: 2020-12-10T23:22:20.120)

LocalDateTime startDateTime = LocalDate.of(2020,12,9,12,2,00);
// of 메소드의 파라미터로 넘어간 값에 따라 날짜 및 시간 저장된 LocalDateTime 객체 리턴
// 이 메소드 또한 ns는 넘기지 않아도 됨

LocalDateTime 자료형 타입 변환

DateTime 포맷 변경

import java.time.format.DateTimeFormatter;
// DateTimeFormatter 사용을 위해 import 해야 할 패키지

LocalDateTime now = LocalDateTime.of(2020,12,10,23,30,20);

DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
String nowDateTime = now.format(dateTimeFormatter);
// 형식 예: 2020-12-10 23:30:20

DateTimeFormatter dateTimeFormatter2 = DateTimeFormatter.ofPattern("yyyy년 M월 d일 a h시 m분 s초");
String nowDateTime2 = now.format(dateTimeFormatter2);
// 형식 예: 2020년 12월 10일 PM 11시 30분 20초

LocalDateTime → String(YYYY-MM-dd HH:mm:ss)

LocalDateTime.of(2020,12,10,13,41,30).format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));

LocalDateTime → LocalDate

LocalDate.from(LocalDateTime.of(2020,12,10,23,35,20));

시간 차이 계산

LocalDateTime startDateTime = LocalDateTime.of(2020,12,9,23,30,20);
// System.out.println(startDateTime) 결과: 2020-12-09T23:30:20

LocalDateTime endDateTime = LocalDateTime.now();
// System.out.println(endDateTime) 결과: 2020-12-10T14:20:56.695433

Duration duration = Duration.between(startDateTime, endDateTime);
duration.getSeconds();
// System.out.println(duration.getSeconds()) 결과: 53436

DateTime 더하기

  • 빼기는 plus 대신 minus* 사용하면 됩니다.
  • LocalDate 객체 또는 LocalTime 객체에서도 사용 가능합니다(물론, time 값 증가를 LocalDate에 쓰는 것은 의미 없음).
Return Type Method Description
java.time.LocalDateTime plusYears(long yearsToAdd) 년도 더하기
java.time.LocalDateTime plusMonths(long MonthsToAdd) 월 더하기
java.time.LocalDateTime plusWeeks(long WeeksToAdd) 주 더하기
java.time.LocalDateTime plusDays(long DaysToAdd) 일 더하기
java.time.LocalDateTime plusHours(long HoursToAdd) 시간 더하기
java.time.LocalDateTime plusMinutes(long MinutesToAdd) 분 더하기
java.time.LocalDateTime plusSeconds(long SecondsToAdd) 초 더하기
java.time.LocalDateTime plusNanos(long NanosToAdd) 나노초 더하기

Time 변경하기

  • LocalTime, LocalDateTime의 경우 with* 메소드를 사용하여 시간을 변경할 수 있습니다.
LocalDateTime now = LocalDateTime.now();
now.withHour(2); // 2시로 변경
now.withMinute(30); // 30분으로 변경
now.withSecond(32); // 32초로 변경
now.withNano(20); // 20나노초로 변경

//LocalDateTime객체.withHour(int hour)
//LocalDateTime객체.withMinute(int minute)
//LocalDateTime객체.withSecond(int second)
//LocalDateTime객체.withNano(int nano)
728x90
반응형

'PROGRAMMING LANGUAGE > JAVA' 카테고리의 다른 글

[JAVA 개념] ArrayList 초기화  (0) 2022.02.20
[JAVA 개념] 길이 관련 메소드 사용법(length, length(), size())  (0) 2022.02.20
[myBatis] #와 $ 사용 시 차이점  (0) 2020.12.10
[JAVA 개념] JVM, JRE, JDK란?  (0) 2019.10.21
[JAVA] Oracle Java SE 지원 로드맵  (0) 2019.10.14
  1. LocalDate
  2. import할 패키지명
  3. 사용 예
  4. LocalDate 자료형 타입 변환
  5. LocalTime
  6. import할 패키지명
  7. 사용 예
  8. LocalDateTime
  9. import할 패키지명
  10. 사용 예
  11. LocalDateTime 자료형 타입 변환
  12. 시간 차이 계산
  13. DateTime 더하기
  14. Time 변경하기
'PROGRAMMING LANGUAGE/JAVA' 카테고리의 다른 글
  • [JAVA 개념] ArrayList 초기화
  • [JAVA 개념] 길이 관련 메소드 사용법(length, length(), size())
  • [myBatis] #와 $ 사용 시 차이점
  • [JAVA 개념] JVM, JRE, JDK란?
EARTH_ROOPRETELCHAM
EARTH_ROOPRETELCHAM
반응형
EARTH_ROOPRETELCHAM
ROOPRETELCHAM
EARTH_ROOPRETELCHAM
전체
오늘
어제
  • 분류 전체보기
    • FRAMEWORK
      • Spring
    • PROGRAMMING LANGUAGE
      • KOTLIN
      • JAVA
      • Design Pattern
    • DB
      • PostgreSQL
      • MySQL
      • Oracle
    • SYSTEM & INFRA
      • KAFKA
      • NGINX
      • TOMCAT
      • ANSIBLE
      • DOCKER
      • LINUX
      • AWS
      • OPEN API
    • AI
      • AI Tools
      • Generative AI
    • IDE
      • eclipse
      • IntelliJ
    • DEVELOPMENT TOOLS
      • Git
      • Build Tool
    • TECH BOOK
    • SECURITY
      • CHROME
    • ALGORITHM
      • C++
      • Greedy
      • DFS(Depth First Search
      • BFS(Breath First Search
      • Recursion
    • MAC
      • DEVELOP
    • WINDOWS
      • TIP
    • PRODUCTS
      • IT
    • IT Knowledge

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

자바
IntelliJ
PostgreSQL
MYSQL
게시판
mac
elastic beanstalk
effective kotlin
스프링부트
코틀린 완벽 가이드
java
이펙티브 코틀린
kotlin
Spring
springboot
git
코틀린
Oracle
게시판프로젝트
coroutine

최근 댓글

최근 글

hELLO· Designed By정상우.v4.5.3
EARTH_ROOPRETELCHAM
[JAVA 1.8↑] LocalDateTime, LocalDate, LocalTime
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.