java.time 패키지(2) - TemporalAdjusters와 Period & Duration

2022. 1. 7. 11:19·자바/java.time 패키지

1. TemporalAdjusters

- 날짜와 시간을 plus()와 minus()를 써서 바꿨지만, TemporalAdjusters를 사용하면 직관적으로 바꿀 수 있다.

 

 

- 아래의 코드를 보고 이해하자.

 

- 이외에도 여러 개의 메서드가 존재하는데, 이것은 자바의 정석 565p를 참고하자.

 

 

 

- 아래의 코드는 TemporalAdjuster의 인터페이스이다.

( 사실 with() 대신에 adjustInto()를 사용해도 된다. )

( adjustInto()를 쓴다는 것은 내부적으로 사용하기 위해서 사용되기 때문에, 이것이 아니라면 with()를 쓴다.)

 

 

 

 

1-1. TemporalAdjusters를 이해하기 위한 예제(1)

: TemporalAdjuster를 내부적으로 인터페이스를 상속 받아 구현한다.

 

( import static을 사용하여 간단하게 표현하였다. )

 

 

 

 

2. Period & Duration

- (날짜-날짜)는 Preiod을, (시간-시간)은 Duration을 사용한다.

 

 

 

- 아래의 코드를 보고 이해하자.

( LocalTime의 Duration은 위의 Period를 Duration으로 바꿔주면 똑같다. )

 

 

 

- 주의할 점은 Duration은 시간, 분을 얻을 수 있는 get() 메서드가 없고 getSeconds()만 존재한다.

그래서 시간과 분을 얻기 위해서는 getSeconds() 를 가지고 Locatime으로 변경해야만 한다.

아래의 코드를 보자.

 

- 더 자세한 내용은 자바의 정석 569p를 참조한다.

'자바 > java.time 패키지' 카테고리의 다른 글

java.time 패키지(3) - 파싱과 포맷  (0) 2022.01.09
java.time 패키지(1)  (0) 2022.01.06
'자바/java.time 패키지' 카테고리의 다른 글
  • java.time 패키지(3) - 파싱과 포맷
  • java.time 패키지(1)
백_곰
백_곰
  • 백_곰
    친절한 코딩
    백_곰
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 알고리즘 (with JAVA)
        • 기본 알고리즘
        • 완전 탐색
        • 분할 정복 알고리즘
        • 동적 계획법
        • 탐욕법
        • 코딩 테스트 기출 문제
        • 코드트리 조별과제
      • 백준 (with JAVA)
        • 완전 탐색
        • 분할 정복
        • 그 외
      • 자바
        • 개발 환경 구축하기
        • 팁
        • 기본적인 개념
        • 컬렉션 프레임워크
        • 프로세스와 쓰레드
        • 지네릭스
        • 람다식
        • 스트림
        • 입출력 IO
        • 네트워킹
        • 열거형(enums)
        • java.lang 패키지
        • java.time 패키지
        • 유용한 클래스들
        • 형식화 클래스들
      • 안드로이드 with 자바
        • 응용 문제들
        • 자잘한 문제들
        • 오류 보고서
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      문자 기반 스트림
      TCP 소켓 프로그래밍
      중간연산
      역직렬화
      ServerSocket
      map()
      java.lang패키지
      코딩트리조별과제
      코드트리
      안정 정렬
      file
      소켓 프로그래밍
      다형성
      안드로이드 스튜디오
      선택 정렬
      불안정 정렬
      람다식
      유용한 클래스
      코딩테스트
      outputstream
      Collections Framework
      스트림
      snail
      java.time 패키지
      알고스팟
      Arrays
      제자리 정렬
      자바 개념
      InputStream
      serializable
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    백_곰
    java.time 패키지(2) - TemporalAdjusters와 Period & Duration
    상단으로

    티스토리툴바