// 从默认时区的系统时钟获取当前日期。
System.out.println(LocalDate.now()); //2021-10-11
//这将返回一个LocalDate与指定的年,月和日。 该日期必须在年和月中有效,否则将抛出异常。
System.out.println(LocalDate.of(2020, 10, 5)); //2020-10-05
System.out.println(LocalDate.of(2020, Month.MAY, 10)); //2020-05-10
//这将返回一个LocalDate与指定年份和日期。 获取某年第多少天的日期
System.out.println(LocalDate.ofYearDay(2020, 100)); //2020-04-09
//从纪元日数获得一个LocalDate的实例。
//EPOCH_DAY是第0天为1970-01-01的简单递增计数。 负数表示较早的日子。
System.out.println(LocalDate.ofEpochDay(0)); //1970-01-01
System.out.println(LocalDate.ofEpochDay(365)); //1971-01-01
System.out.println(LocalDate.ofEpochDay(-365)); //1969-01-01
//从一个文本字符串(如2007-12-03获取一个LocalDate的实例。
System.out.println(LocalDate.parse("2007-12-31")); //2007-12-31
//text - 要解析的文本,不为null
//formatter - 要使用的格式化程序,不为null
// LocalDate.parse("2020-12-30", DateTimeFormatter.ISO_WEEK_DATE);
LocalDate local = LocalDate.now();
// 返回当前日期0点的 LocalDateTime
System.out.println(local.atStartOfDay()); //2021-10-11T00:00
//将此日期与午夜时间结合 LocalDateTime ,在此日期开始时创建一个 LocalDateTime 。
LocalDateTime time = local.atStartOfDay();
//结合此日期与时间创建一个 LocalDateTime 。
System.out.println(local.atTime(10, 10, 10)); //2021-10-11T10:10:10
//结合此日期与时间创建一个 LocalDateTime 。
System.out.println(local.atTime(LocalTime.now())); //2021-10-11T15:57:37.614
//将此日期与另一个日期进行比较。
//一层一层对比 从 年->年 月->月 天->天 不同才返回差值
System.out.println(local.compareTo(LocalDate.of(2025, 10, 30))); //-4
System.out.println(local.compareTo(LocalDate.of(2021, 9, 30))); //1
System.out.println(local.compareTo(LocalDate.of(2021, 10, 30))); //-19
// 比较两个日期是否相等
System.out.println(local.equals("2021-01-01")); //false
System.out.println(local.getChronology());
//获取今天这个月的第几天
System.out.println(local.getDayOfMonth()); //11
// 获取今天是今年的第几天
System.out.println(local.getDayOfYear()); //284
// 获取今天是周几
System.out.println(local.getDayOfWeek()); //MONDAY
System.out.println(local.getEra());
// 获取英文当前月份
System.out.println(local.getMonth()); //OCTOBER
//获取当前中文月份 从1到12
System.out.println(local.getMonthValue()); //10
// 获取当前年份信息
System.out.println(local.getYear()); //2021
System.out.println(local.hashCode());
//检查此日期是否在指定日期之后
System.out.println(local.isAfter(LocalDate.of(2021, 12, 10))); //false
//检查此日期是否在指定日期之前。
System.out.println(local.isBefore(LocalDate.of(2021, 12, 10))); //true
//检查此日期是否等于指定的日期。
System.out.println(local.isEqual(LocalDate.of(2021, 12, 10))); //false
//检查当前年份是否是闰年
System.out.println(local.isLeapYear()); //false
//返回当前月份的最后一天
LocalDate local1 = LocalDate.of(2021, 11, 1);
System.out.println(local1.lengthOfMonth()); //30
// 返回当前日期 表示年份的长度 365,366
System.out.println(local.lengthOfYear()); //365
// 返回此日期的副本,减去指定的天数
System.out.println(local.minusDays(20)); //2021-09-21
// 返回当前日期减去指定的月份
System.out.println(local.minusMonths(2)); //2021-08-11
// 返回当前日期减去指定的周
System.out.println(local.minusWeeks(3)); //2021-09-20
// 返回当前日期减去指定的年
System.out.println(local.minusYears(2)); //2019-10-11
// 当前日期加上指定的天数
System.out.println(local.plusDays(10)); //2021-10-21
//当前日期加上指定的月份
System.out.println(local.plusMonths(3)); //2022-01-11
//当前日期加上指定的年份
System.out.println(local.plusYears(3)); //2024-10-11
//当前日期加上指定的周数
System.out.println(local.plusWeeks(3)); //2021-11-01
//将此日期转换为大纪元日。
System.out.println(local.toEpochDay());
System.out.println(local.toString()); //2021-10-11
// 计算两个日期之间相差的 年 月 日
//将此日期和其他日期之间的期间计算为 Period 。
System.out.println(local.until(LocalDate.of(2021,1,30))); //P-8M-12D
System.out.println(local.until(LocalDate.of(2020,1,30))); //P-1Y-8M-12D
System.out.println(local.until(LocalDate.of(2022,1,30))); //P3M19D
// 返回当前日期 的年月和指定的天
System.out.println(local.withDayOfMonth(30)); //2021-10-30
System.out.println(local.withDayOfMonth(1)); //2021-10-01
// 返回当前的日期 的年的天 加上指定的月
System.out.println(local.withMonth(2)); //2021-02-11
// 返回当前日期 的月份和天 加上指定的年份
System.out.println(local.withYear(2000)); //2000-10-11
//返回当前日期 当前年份第100天的日期
System.out.println(local.withDayOfYear(100)); //2021-04-10