java8 LocalDate-API

// 从默认时区的系统时钟获取当前日期。
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
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值