JAVA/포스팅

java.time.Instant 클래스

짜집퍼박사(짜박) 2023. 11. 16. 18:00

java.time.Instant 클래스는 날짜와 시간을 특정 시점(에포크 시간)으로 표현하는 데 사용됩니다.

 

1. Instant 클래스의 생성

현재 시간으로 Instant 객체 생성

Instant now = Instant.now();

특정 에포크 시간(초)으로 Instant 객체 생성

Instant epochTimeInstant = Instant.ofEpochSecond(1627582900);

특정 에포크 시간과 나노초로 Instant 객체 생성

Instant customInstant = Instant.ofEpochSecond(1627582900, 500_000_000);

 

2. 에포크 시간 및 나노초 가져오기

에포크 시간(초) 가져오기

long epochSecond = instant.getEpochSecond();

나노초 가져오기

int nano = instant.getNano();

 

3. Instant 객체 조작

특정 시간 단위로 시간 증가 또는 감소

Instant plusInstant = instant.plusSeconds(60);
Instant minusInstant = instant.minusMillis(1000);

특정 시간 단위로 시간을 잘라낸(트렁크트) 새로운 Instant 객체 생성

Instant truncatedInstant = instant.truncatedTo(ChronoUnit.MINUTES);

특정 필드를 조정하여 새로운 Instant 객체 생성

Instant adjustedInstant = instant.with(ChronoField.NANO_OF_SECOND, 0);

 

4. Instant 객체 비교

다른 Instant 객체와의 비교

boolean isAfter = instant.isAfter(anotherInstant);
boolean isBefore = instant.isBefore(anotherInstant);
int comparison = instant.compareTo(anotherInstant);

 

5. Instant 객체의 동등성 확인

다른 Instant 객체와의 동등성 비교

boolean isEqual = instant.equals(anotherInstant);

 

6. Instant 객체의 출력

Instant 객체를 문자열로 변환

String instantString = instant.toString();

 

주의사항

Instant 클래스는 불변(immutable)이며, 변경할 수 없는 객체입니다. 따라서 Instant 객체를 조작하는 메소드들은 새로운 Instant 객체를 반환합니다.
Instant 클래스는 java.time 패키지에서 제공하는 날짜와 시간 관련 클래스 중 하나로, 주로 데이터베이스와 통신할 때나 특정 시점의 시간을 나타낼 때 사용됩니다.

 

이러한 메소드들은 Instant 클래스를 효과적으로 활용할 수 있도록 도와줍니다.

 

With ChatGPT

'JAVA > 포스팅' 카테고리의 다른 글

java.time.LocalTime 클래스  (0) 2023.11.17
java.time.LocalDate 클래스  (0) 2023.11.16
자바 java.time패키지의 주요 클래스  (0) 2023.11.16
자바 java.time패키지  (0) 2023.11.16
자바 MessageFormat  (0) 2023.11.16