实例:
package com.javaBase.time;
import java.time.Clock;
import java.time.LocalDate;
import java.time.LocalTime;
import java.time.MonthDay;
import java.time.YearMonth;
import java.time.temporal.ChronoUnit;
public class GetDateWithJava8 {
public static void main(String[] args) {
//2019-04-11
LocalDate today=LocalDate.now();
//2019
int year=today.getYear();
//4
int month=today.getMonthValue();
//11
int day=today.getDayOfMonth();
//101,表示本年过了多天
int dayOfYear=today.getDayOfYear();
System.out.println("today:"+today+",year:"+year+",month:"+month+",day:"+day+",dayOfYear:"+dayOfYear);
//创建指定日期
//2019-04-11
LocalDate myDate=LocalDate.of(2019,4,11);
//日期比较,同一天则是true
boolean flag=today.equals(myDate);
//检查生日
LocalDate dateOfBirth=LocalDate.of(1995,3,12);
MonthDay birthDay=MonthDay.of(dateOfBirth.getMonth(), dateOfBirth.getDayOfMonth());
LocalDate now=LocalDate.now();
MonthDay currentMonthDay=MonthDay.from(now);
if(currentMonthDay.equals(birthDay)) {
System.out.println("今天是生日...");
}
//获取当前时间,默认的格式是hh:mm:ss:nnn
//15:53:11.096
LocalTime nowTime=LocalTime.now();
//增加2个小时
//17:53:11.096
LocalTime twoHour=nowTime.plusHours(2);
//增加一周
//2019-04-18
LocalDate oneWeek=today.plus(1,ChronoUnit.WEEKS);
//增加一个月
//2019-05-11
LocalDate oneMonth=today.plusMonths(1);
//增加一年
//2020-04-11
LocalDate oneYear=today.plus(1, ChronoUnit.YEARS);
//使用时钟
//SystemClock[Z]
Clock clock=Clock.systemUTC();
//SystemClock[Asia/Shanghai]
clock=Clock.systemDefaultZone();
//*****************日期比较**********************//
LocalDate tomorrow=today.plus(1,ChronoUnit.DAYS);
//返回true
today.isBefore(tomorrow);
//返回true
tomorrow.isAfter(today);
//*******检查本月的天数*****//
//2019-04
YearMonth currentYearMonth=YearMonth.now();
//获取本月的天数
//30
currentYearMonth.lengthOfMonth();
//检查平年还是闰年
//false(表示不是闰年)
today.isLeapYear();
System.out.println(today.isLeapYear());
// 两个日期之间包含多少天,
}
}
===================================================================================================================================