Class LocalDate

java.lang.Object
java.time.LocalDate
All Implemented Interfaces:
Comparable<ChronoLocalDate>, ChronoLocalDate, Temporal, TemporalAccessor

public final class LocalDate extends Object implements ChronoLocalDate
A date of the ISO calendar with no time and no zone, such as 2007-12-03.
  • Field Details

    • MIN

      public static final LocalDate MIN
      -999999999-01-01, the earliest date.
    • MAX

      public static final LocalDate MAX
      +999999999-12-31, the latest date.
    • EPOCH

      public static final LocalDate EPOCH
      1970-01-01.
  • Method Details

    • now

      public static LocalDate now()
    • now

      public static LocalDate now(ZoneId zone)
      The date today in zone.
    • now

      public static LocalDate now(Clock clock)
    • of

      public static LocalDate of(int year, int month, int dayOfMonth)
    • of

      public static LocalDate of(int year, Month month, int dayOfMonth)
    • ofYearDay

      public static LocalDate ofYearDay(int year, int dayOfYear)
      The dayOfYearth day of year.
    • ofInstant

      public static LocalDate ofInstant(Instant instant, ZoneId zone)
      The date instant falls on in zone.
    • ofEpochDay

      public static LocalDate ofEpochDay(long epochDay)
    • from

      public static LocalDate from(TemporalAccessor temporal)
      The date of temporal.
    • parse

      public static LocalDate parse(CharSequence text)
    • parse

      public static LocalDate parse(CharSequence text, DateTimeFormatter formatter)
    • getYear

      public int getYear()
    • getMonthValue

      public int getMonthValue()
    • getMonth

      public Month getMonth()
      The month as a Month.
    • getDayOfMonth

      public int getDayOfMonth()
    • getDayOfYear

      public int getDayOfYear()
      The day of the year, 1 for January 1st.
    • getDayOfWeek

      public DayOfWeek getDayOfWeek()
      The day of the week.
    • isLeapYear

      public boolean isLeapYear()
      Description copied from interface: ChronoLocalDate
      Whether the year of this date is a leap year.
      Specified by:
      isLeapYear in interface ChronoLocalDate
    • lengthOfMonth

      public int lengthOfMonth()
      Description copied from interface: ChronoLocalDate
      The days in the month of this date.
      Specified by:
      lengthOfMonth in interface ChronoLocalDate
    • lengthOfYear

      public int lengthOfYear()
      Description copied from interface: ChronoLocalDate
      The days in the year of this date.
      Specified by:
      lengthOfYear in interface ChronoLocalDate
    • toEpochDay

      public long toEpochDay()
      Description copied from interface: ChronoLocalDate
      The days since 1970-01-01.
      Specified by:
      toEpochDay in interface ChronoLocalDate
    • withYear

      public LocalDate withYear(int year)
    • withMonth

      public LocalDate withMonth(int month)
    • withDayOfMonth

      public LocalDate withDayOfMonth(int dayOfMonth)
    • withDayOfYear

      public LocalDate withDayOfYear(int dayOfYear)
    • isSupported

      public boolean isSupported(TemporalUnit unit)
      Description copied from interface: Temporal
      Whether this value can add or subtract unit.
      Specified by:
      isSupported in interface Temporal
    • plus

      public LocalDate plus(long amountToAdd, TemporalUnit unit)
      Description copied from interface: Temporal
      This value moved forward by amountToAdd of unit.
      Specified by:
      plus in interface Temporal
    • minus

      public LocalDate minus(long amountToSubtract, TemporalUnit unit)
      Description copied from interface: Temporal
      This value moved back by amountToSubtract of unit.
      Specified by:
      minus in interface Temporal
    • plus

      public LocalDate plus(TemporalAmount amount)
      Description copied from interface: Temporal
      This value moved forward by amount.
      Specified by:
      plus in interface Temporal
    • minus

      public LocalDate minus(TemporalAmount amount)
      Description copied from interface: Temporal
      This value moved back by amount.
      Specified by:
      minus in interface Temporal
    • plusDays

      public LocalDate plusDays(long daysToAdd)
    • plusWeeks

      public LocalDate plusWeeks(long weeksToAdd)
    • plusMonths

      public LocalDate plusMonths(long monthsToAdd)
    • plusYears

      public LocalDate plusYears(long yearsToAdd)
    • minusDays

      public LocalDate minusDays(long daysToSubtract)
    • minusWeeks

      public LocalDate minusWeeks(long weeksToSubtract)
    • minusMonths

      public LocalDate minusMonths(long monthsToSubtract)
    • minusYears

      public LocalDate minusYears(long yearsToSubtract)
    • until

      public long until(Temporal endExclusive, TemporalUnit unit)
      The whole units of unit from this date to the date of endExclusive.
      Specified by:
      until in interface Temporal
    • until

      public Period until(ChronoLocalDate endDateExclusive)
      The years, months and days from this date to endDateExclusive.
    • datesUntil

      public Stream<LocalDate> datesUntil(LocalDate endExclusive)
      The dates from this one up to and not including endExclusive, a day apart.
    • atTime

      public LocalDateTime atTime(int hour, int minute)
    • atTime

      public LocalDateTime atTime(int hour, int minute, int second)
    • atTime

      public LocalDateTime atTime(int hour, int minute, int second, int nano)
    • atTime

      public LocalDateTime atTime(LocalTime time)
    • atStartOfDay

      public LocalDateTime atStartOfDay()
      Midnight at the start of this date.
    • atStartOfDay

      public ZonedDateTime atStartOfDay(ZoneId zone)
    • format

      public String format(DateTimeFormatter formatter)
    • compareTo

      public int compareTo(ChronoLocalDate other)
      Description copied from interface: Comparable

      Compares this object to the specified object to determine their relative order.

      Parameters
      • another: the object to compare to this instance.
      Returns
      Specified by:
      compareTo in interface Comparable<ChronoLocalDate>
      Returns:

      a negative integer if this instance is less than another; a positive integer if this instance is greater than another; 0 if this instance has the same order as another.

      Throws
      • ClassCastException: @throws ClassCastException if another cannot be converted into something comparable to this instance.
    • isAfter

      public boolean isAfter(ChronoLocalDate other)
      Description copied from interface: ChronoLocalDate
      Whether this date comes after other.
      Specified by:
      isAfter in interface ChronoLocalDate
    • isBefore

      public boolean isBefore(ChronoLocalDate other)
      Description copied from interface: ChronoLocalDate
      Whether this date comes before other.
      Specified by:
      isBefore in interface ChronoLocalDate
    • isEqual

      public boolean isEqual(ChronoLocalDate other)
      Description copied from interface: ChronoLocalDate
      Whether this date is the same day as other.
      Specified by:
      isEqual in interface ChronoLocalDate
    • equals

      public boolean equals(Object obj)
      Description copied from class: Object
      Indicates whether some other object is "equal to" this one. The equals method implements an equivalence relation: It is reflexive: for any reference value x, x.equals(x) should return true. It is symmetric: for any reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true. It is transitive: for any reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true. It is consistent: for any reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the object is modified. For any non-null reference value x, x.equals(null) should return false. The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any reference values x and y, this method returns true if and only if x and y refer to the same object (x==y has the value true).
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Description copied from class: Object
      Returns a hash code value for the object. This method is supported for the benefit of hashtables such as those provided by java.util.Hashtable. The general contract of hashCode is: Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application. If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result. It is not required that if two objects are unequal according to the equals(java.lang.Object) method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hashtables. As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the JavaTM programming language.)
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      The JDK's text, uuuu-MM-dd, with a sign on a year past 9999.
      Overrides:
      toString in class Object