Java日期相关_LocalDate&LocalTime&LocalDateTime

 JDK1.0中使用java.util.Date类(第一批日期时间API)

JDK1.1引入Calendar类(第二批日期时间API)

缺陷:

可变性:像日期和时间这样的类应该是不可变的

偏移性:Date中的年份是从1900开始的,而月份都从0开始

格式化:格式化只对Date有用,Calendar则不行

因此JDK1.8新增日期时间API:第三批日期时间API:LocalDate&LocalTime&LocalDateTime

package com.pyk.teat;  import java.time.LocalDate; import java.time.LocalDateTime; import java.time.LocalTime;  public class Test04 { 	public static void main(String[] args) { 		//1、完成实例化 		//方法1:now()--获取当前日期,时间,日期+时间 		LocalDate localDate=LocalDate.now(); 		LocalTime localTime=LocalTime.now(); 		LocalDateTime localDateTime=LocalDateTime.now(); 		//方法2:of() 		localDate =LocalDate.of(2022,5,1); 		localTime=LocalTime.of(12,23,23); 		localDateTime=LocalDateTime.of(2022,5,1,12,23,23); 		 		//LocalDate和LocalTime不如LocalDateTime多,下面讲解只用LocalDateTime 		 		System.out.println(localDateTime.getYear());//2022 		System.out.println(localDateTime.getMonth());//MAY 		System.out.println(localDateTime.getMonthValue());//5 		System.out.println(localDateTime.getDayOfMonth());//1 		System.out.println(localDateTime.getDayOfWeek());//SUNDAY 		System.out.println(localDateTime.getHour());//12 		System.out.println(localDateTime.getMinute());//23 		System.out.println(localDateTime.getSecond());//23 	 		//with:设置 		LocalDateTime localDateTime2=localDateTime.withMonth(8); 		System.out.println(localDateTime); 		System.out.println(localDateTime2); 		//以上对比就得知性,只能更改一个新的对象而不能修改原先的对象(不可变性) 		 	} }