>  기사  >  Java  >  자바 시대

자바 시대

王林
王林원래의
2024-08-30 15:52:511268검색

자바 기간은 시간을 연, 월, 일 단위로 측정하는 데 사용되는 클래스입니다. Java의 Period 클래스 패키지는 java.time.Period입니다. Period 클래스 객체는 기간을 지정하거나 연, 월, 일 단위의 두 시간 간의 차이를 확인하는 데 사용됩니다. Period 객체는 불변이고 스레드로부터 안전합니다. Period 객체는 불변이므로 일단 생성되면 값을 변경할 수 없습니다. 그러나 다른 Period 개체를 기반으로 새 Period 개체를 만들 수 있습니다. Period 클래스는 객체 클래스(객체가 Java의 모든 클래스의 슈퍼클래스이기 때문에)를 상속하고 ChronoPeriod 인터페이스를 구현합니다.

무료 소프트웨어 개발 과정 시작

웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등

구문:

Java의 Period 클래스 선언 구문은 다음과 같습니다.

public final class Period extends Object implements ChronoPeriod, Serializable
{
// variables and method of the class Period
}

자바 시대를 설명하는 방법

아래에는 Period 클래스 메소드 목록이 예제 코드와 함께 설명되어 있습니다. 유사한 메서드에 대해 예제 코드를 추가로 사용할 수 있습니다(각 메서드 예제 코드는 제공되지 않음):

  • long get(TemporalUnit 단위): 요청한 단위의 값을 반환합니다.
  • (LocalDate startInclusive, LocalDate endExclusive) 간의 정적 기간: Return Period 개체는 연, 월, 일 수의 두 날짜 사이의 기간입니다.

코드:

import java.time.Period;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
public class PeriodClassDemo {
public static void main(String[] args) {
Period p = Period.between(LocalDate.ofYearDay(2017, 20), LocalDate.ofYearDay(2017, 30) );
System.out.println(p);
System.out.println(p.get(ChronoUnit.DAYS));
System.out.println(p.get(ChronoUnit.MONTHS));
System.out.println(p.get(ChronoUnit.YEARS));
}
}

출력:

자바 시대

  • Temporal addTo(Temporal temporary): Temporal과 이 Period 객체를 더한 Return Period 객체입니다.

코드:

import java.time.Period;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.time.LocalDateTime;
public class PeriodClassDemo {
public static void main(String[] args) {
Period period = Period.of(1,1,1);
LocalDateTime d = LocalDateTime.now();
System.out.println(d);
d = (LocalDateTime)period.addTo(d);
System.out.println(d);
}
}

출력:

자바 시대

  • boolean equals(Object otherPeriod): 지정된 기간으로 이 기간을 확인하고 부울을 반환합니다.
  • boolean isNegative(): 이 기간이 음수이면 True를 반환합니다.
  • boolean isZero(): 이 기간이 음수이면 True를 반환합니다.

코드:

import java.time.Period;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.time.LocalDateTime;
public class PeriodClassDemo {
public static void main(String[] args) {
Period p1 = Period.of(1,1,1);
Period p2 = Period.of(10,5,2);
Period p3 = Period.of(10,5,2);
System.out.println(p1.equals(p2));
System.out.println(p2.equals(p3));
System.out.println(p2.isNegative());
System.out.println(p2.isZero());
}
}

출력:

자바 시대

  • static Duration from(TemporalAmount amount): 시간적 양에서 기간의 인스턴스를 가져옵니다.

코드:

import java.time.Period;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.time.LocalDateTime;
public class PeriodClassDemo {
public static void main(String[] args) {
Period p = Period.from(Period.of(10, 5, 2) );
System.out.println(p);
}
}

출력:

자바 시대

  • IsoChronology getChronology(): ISO 달력 시스템에 따른 이 기간의 연대기를 반환합니다.
  • int getDays(): 반품 기간(일)
  • int getMonths(): 반품 기간(개월)
  • 목록<임시단위> getUnits(): 이 기간에 지원되는 단위 집합을 반환합니다.
  • int hashCode(): 이 기간의 해시 코드를 반환합니다.

코드:

import java.time.Period;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.time.LocalDateTime;
public class PeriodClassDemo {
public static void main(String[] args) {
Period p = Period.from(Period.of(10, 5, 2) );
System.out.println(p.getChronology());
System.out.println(p.get(ChronoUnit.MONTHS));
System.out.println(p.getDays());
System.out.println(p.getMonths());
System.out.println(p.getYears());
System.out.println(p.getClass());
System.out.println(p.getUnits());
}
}

출력:

자바 시대

  • Period minus(TemporalAmount amountToSubtract): 이 기간에서 지정된 기간을 뺀 결과 객체를 반환합니다.
  • Period minusDays(long daysToSubtract): 지정된 일수로 뺀 개체를 반환합니다.
  • Period mindmonths(long Months): 이 기간의 결과에서 지정된 월을 뺀 개체를 반환합니다.
  • 기간 마이너스 연도(장년): 지정된 연도에서 이 기간을 뺀 결과인 객체를 반환합니다.
  • Period multipliedBy(long multiplicand): 스칼라를 곱한 기간 객체를 반환합니다.
  • 기간 부정(): 길이가 부정된 기간으로 인해 발생한 기간 개체를 반환합니다.
  • Period Normalized(): 연도와 월로 정규화된 이 기간의 결과인 기간 개체를 반환합니다.
  • 정적 기간(int 년, int 개월, int 일): 몇 년, 월, 일을 나타내는 Period 개체를 반환합니다.
  • 정적 기간(정수 일): 며칠의 기간 개체를 반환합니다.
  • 정적 개월 기간(int 개월): 여러 달의 기간 개체를 반환합니다.
  • 정적 Period of Weeks(int 주): 몇 주의 Period 개체를 반환합니다.
  • 정적 연도 기간(int 연): 몇 주의 기간 개체를 반환합니다.

코드:

import java.time.Period;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.time.LocalDateTime;
public class PeriodClassDemo {
public static void main(String[] args) {
Period p1 = Period.of(10,5,2);
Period p2 = Period.of(20,5,2);
System.out.println(p1.getDays());
System.out.println(p2.getDays());
System.out.println(p1.minus(p2).getDays());
System.out.println(p1.minusDays(2).getDays());
System.out.println(p1.minusMonths(1).getDays());
System.out.println(p1.minusYears(1).getDays());
System.out.println(p1.multipliedBy(2).getDays());
System.out.println(p1.negated().getDays());
System.out.println(p1.normalized().getDays());
Period p3 = Period.ofDays(1);
System.out.println(p3.getDays( ));
Period p4 = Period.ofMonths(2);
System.out.println(p4.getMonths());
}
}

출력:

자바 시대

  • static Period parse(CharSequence text): Return Period object from a text, for example, PnYnMnD.
  • Period plus(TemporalAmount amountToAdd): Return the period object of this period with added the specified period.
  • Period plusDays(long daysToAdd ): Return a period object of this period with added the specified days.
  • Period plusMonths(long monthsToAdd): Return a period object of this period with added the specified months.
  • Period plusYears(long yearsToAdd): Return a period object of this period with added the specified years.

Code:

import java.time.Period;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.time.LocalDateTime;
public class PeriodClassDemo {
public static void main(String[] args) {
Period p1 = Period.of(10,5,2);
Period p2 = Period.parse("P1Y2M3D");
System.out.println(p2.getMonths());
Period p3 = p1.plus(Period.ofDays(5));
System.out.println(p3);
}
}

Output:

자바 시대

  • Temporal subtractFrom(Temporal temporal): Return Subtraction of this period from a temporal object.
  • String toString(): Return this period in string representation, such as PT8H6M12.345S.
  • long toTotalMonths(): Return the total number of months in this period.
  • Period withDays(int days): Return a period object of this period with the specified amount of days.
  • Period withMonths(int months): Return a period object of this period with the specified amount of months.
  • Period withYears(int years): Return a period object of this period with the specified amount of Years.

Code:

import java.time.Period;
import java.time.LocalDate;
import java.time.temporal.ChronoUnit;
import java.time.LocalDateTime;
public class PeriodClassDemo {
public static void main(String[] args) {
Period p1 = Period.of(10,5,2);
System.out.println(p1);
LocalDateTime d = LocalDateTime.now();
System.out.println(d);
d = (LocalDateTime)p1.subtractFrom(d);
System.out.println(d);
System.out.println(p1.toString());
System.out.println(p1.toTotalMonths());
System.out.println(p1.withDays(2));
System.out.println(p1.toString());
System.out.println(p1.withMonths(1));
System.out.println(p1.toString());
}
}

Output:

자바 시대

Conclusion

The Period class is one of the built-in class in java, which is used to measure time in years, months, and days and add, subtract, and convert the period, or in simple words, the period class allows one to operate on day or month, or year period. The period class is available in java.time.Period package of java.

위 내용은 자바 시대의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:자바 DayOfWeek다음 기사:자바 DayOfWeek