java.time.LocalDate

1 java.time.LocalDate介绍

Java LocalDate类是一个不可变的类,它以默认格式yyyy-MM-dd表示Date。它继承了Object类并实现了ChronoLocalDate接口。

2 java.time.LocalDate声明

让我们看看java.time.LocalDate类的声明。

public final class LocalDate extends Object   
implements Temporal, TemporalAdjuster, ChronoLocalDate, Serializable  

3 java.time.LocalDate方法

方法 描述
Temporal adjustInto(Temporal temporal) 将指定的时态对象调整为与此对象具有相同的日期。
LocalDateTime atStartOfDay() 将此日期与午夜时间相结合,以在此日期开始时创建LocalDateTime。
ZonedDateTime atStartOfDay(ZoneId zone) 根据时区中的规则,在最早的有效时间返回此日期的分区日期时间。
LocalDateTime atTime(int hour, int minute) 将此日期与创建LocalDateTime的时间相结合。
LocalDateTime atTime(int hour, int minute, int second) 将此日期与创建LocalDateTime的时间相结合。
LocalDateTime atTime(int hour, int minute, int second, int nanoOfSecond) 将此日期与创建LocalDateTime的时间相结合。
LocalDateTime atTime(LocalTime time) 将此日期与创建LocalDateTime的时间相结合。
OffsetDateTime atTime(OffsetTime time) 将此日期与偏移时间组合以创建OffsetDateTime。
int compareTo(ChronoLocalDate other) 将此日期与另一个日期进行比较。
boolean equals(Object obj) 检查此日期是否等于另一个日期。
String format(DateTimeFormatter formatter) 使用指定的格式化程序格式化此日期。
static LocalDate from(TemporalAccessor temporal) 从时态对象获取LocalDate的实例。
int get(TemporalField field) 从int获取指定字段的值作为int。
IsoChronology getChronology() 获取此日期的年表,即ISO日历系统。
int getDayOfMonth() 获取日期字段。
DayOfWeek getDayOfWeek() 获取星期几字段,即枚举DayOfWeek。
int getDayOfYear() 获取日期字段。
Era getEra() 获取此日期适用的时代。
long getLong(TemporalField field) 从此日期获取指定字段的值为long。
Month getMonth() 使用Month枚举获取月份字段。
int getMonthValue() 获取1到12之间的月份字段。
int getYear() 获取年份字段。
int hashCode() 此日期的哈希码。
boolean isAfter(ChronoLocalDate other) 检查此日期是否在指定日期之后。
boolean isBefore(ChronoLocalDate other) 检查此日期是否在指定日期之前。
boolean isEqual(ChronoLocalDate other) 检查此日期是否等于指定日期。
boolean isLeapYear() 根据ISO符号日历系统规则,检查年份是否为闰年。
boolean isSupported(TemporalField field) 检查是否支持指定的字段。
boolean isSupported(TemporalUnit unit) 检查指定的单元是否受支持。
int lengthOfMonth() 返回此日期表示的月份长度。
int lengthOfYear() 返回此日期表示的年份长度。
LocalDate minus(long amountToSubtract, TemporalUnit unit) 返回此日期的副本,并减去指定的数量。
LocalDate minus(TemporalAmount amountToSubtract) 返回此日期的副本,并减去指定的数量。
LocalDate minusDays(long daysToSubtract) 返回此LocalDate的副本,并减去指定的天数。
LocalDate minusMonths(long monthsToSubtract) 返回此LocalDate的副本,并减去指定的月数。
LocalDate minusWeeks(long weeksToSubtract) 返回此LocalDate的副本,并减去指定的周数。
LocalDate minusYears(long yearsToSubtract) 返回此LocalDate的副本,并减去指定的年数。
static LocalDate now() 在默认时区中从系统时钟获取当前日期。
static LocalDate now(Clock clock) 从指定的时钟获取当前日期。
static LocalDate now(ZoneId zone) 从指定时区的系统时钟获取当前日期。
static LocalDate of(int year, int month, int dayOfMonth) 从一年,一月和一天获得LocalDate的实例。
static LocalDate of(int year, Month month, int dayOfMonth) 从一年,一月和一天获得LocalDate的实例。
static LocalDate ofEpochDay(long epochDay) 从纪元日计数中获取LocalDate的实例。
static LocalDate ofYearDay(int year, int dayOfYear) 从一年和一年获得LocalDate的实例。
static LocalDate parse(CharSequence text) 从文本字符串(如2007-12-03)获取LocalDate的实例。
static LocalDate parse(CharSequence text, DateTimeFormatter formatter) 使用特定格式化程序从文本字符串中获取LocalDate的实例。
LocalDate plus(long amountToAdd, TemporalUnit unit) 返回此日期的副本,并添加指定的数量。
LocalDate plus(TemporalAmount amountToAdd) 返回此日期的副本,并添加指定的数量。
LocalDate plusDays(long daysToAdd) 返回此LocalDate的副本,并添加指定的天数。
LocalDate plusMonths(long monthsToAdd) 返回此LocalDate的副本,并添加指定的月数。
LocalDate plusWeeks(long weeksToAdd) 返回此LocalDate的副本,并添加指定的周数。
LocalDate plusYears(long yearsToAdd) 返回此LocalDate的副本,其中添加了指定的年数。
<R> R query(TemporalQuery<R> query) 使用指定的查询查询此日期。
ValueRange range(TemporalField field) 获取指定字段的有效值范围。
long toEpochDay() 将此日期转换为大纪元日。
String toString() 将此日期输出为字符串,例如:2007-12-03。
Period until(ChronoLocalDate endDateExclusive) 计算此日期与另一个日期之间的期间作为期间。
long until(Temporal endExclusive, TemporalUnit unit) 根据指定的单位计算到另一个日期的时间量。
LocalDate with(TemporalAdjuster adjuster) 返回此日期的调整副本。
LocalDate with(TemporalField field, long newValue) 返回此日期的副本,并将指定的字段设置为新值。
LocalDate withDayOfMonth(int dayOfMonth) 返回此LocalDate的副本,其中包含日期更改。
LocalDate withDayOfYear(int dayOfYear) 返回此LocalDate的副本,其中包含日期更改。
LocalDate withMonth(int month) 返回此LocalDate的副本,其中包含已更改的月份。
LocalDate withYear(int year) 返回此LocalDate的副本,并更改年份。

4 java.time.LocalDate案例1

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
import java.time.LocalDate;  
public class LocalDateExample1 {  
  public static void main(String[] args) {  
    LocalDate date = LocalDate.now();  
    LocalDate yesterday = date.minusDays(1);  
    LocalDate tomorrow = yesterday.plusDays(2);  
    System.out.println("Today date: "+date);  
    System.out.println("Yesterday date: "+yesterday);  
    System.out.println("Tommorow date: "+tomorrow);  
  }  
}  

输出结果为:

Today date: 2017-01-13
Yesterday date: 2017-01-12
Tommorow date: 2017-01-14

5 java.time.LocalDate案例2

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
import java.time.LocalDate;  
public class LocalDateExample2 {  
  public static void main(String[] args) {  
    LocalDate date1 = LocalDate.of(2017, 1, 13);  
    System.out.println(date1.isLeapYear());  
    LocalDate date2 = LocalDate.of(2016, 9, 23);  
    System.out.println(date2.isLeapYear());  
  }  
}  

输出结果为:

false
true

 

热门文章

优秀文章