Java LocalDate的常用操作及计算

Java LocalDate的常用操作及计算

JDK1.8中新增两个处理日期和时间的类 ,个人常用方法的用法记录如下:

	/**
     * LocalDate 常用操作
     *
     * @param args args
     */
    public static void main(String[] args) {
        // 当前日期
        LocalDate start = LocalDate.now();
        // 加一天
        LocalDate end = start.plusDays(1);
        // start.plusYears(1)
        // 减一天
        // start.minusDays(1)
        //当前月最后一天
        LocalDate mEnd = start.with(TemporalAdjusters.lastDayOfMonth());
        //当前年最后一天
        LocalDate yWith = start.with(TemporalAdjusters.lastDayOfYear());
        // 相差多数天(直接获取,下面需要注意年月日差得到总得相差天数)
        Math.abs((int)(start.toEpochDay() - end .toEpochDay()));
        // 时间差多少天、月、年
        Period between = Period.between(mEnd, yWith);
        int days = between.getDays();
        int months = between.getMonths();
        int years = between.getYears();
        System.err.println("当前日期为:周"+start.getDayOfWeek().getValue());
        // 获取日期的周一是那一天(可能跨月)
        LocalDate monday = start.with(DayOfWeek.MONDAY);
        System.err.println("当前日期的周一为:"+monday);
        System.out.println(end);
        System.out.println(mEnd);
        System.out.println(yWith);
        System.out.println("相差多少天:" + days + ",相差多少月:" + months + ",相差多少年:" + years);
    }

待后面继续更新经常使用方法。。。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Java中的LocalDate类是用于表示日期的类,它提供了一些方法来计算日期之间的时间差。下面是一些常用的方法: 1. `until()`方法:该方法用于计算两个日期之间的时间差。它接受一个Temporal对象作为参数,并返回一个Period对象,表示两个日期之间的年、月、日的差值。例如: ```java LocalDate date1 = LocalDate.of(2022, 1, 1); LocalDate date2 = LocalDate.of(2022, 12, 31); Period period = date1.until(date2); System.out.println(period.getYears()); // 输出:0 System.out.println(period.getMonths()); // 输出:11 System.out.println(period.getDays()); // 输出:30 ``` 2. `toEpochDay()`方法:该方法返回从1970年1月1日到指定日期的天数。可以使用这个方法来计算两个日期之间的天数差。例如: ```java LocalDate date1 = LocalDate.of(2022, 1, 1); LocalDate date2 = LocalDate.of(2022, 12, 31); long days = date2.toEpochDay() - date1.toEpochDay(); System.out.println(days); // 输出:364 ``` 3. `isBefore()`和`isAfter()`方法:这两个方法用于比较两个日期的先后顺序。例如: ```java LocalDate date1 = LocalDate.of(2022, 1, 1); LocalDate date2 = LocalDate.of(2022, 12, 31); if (date1.isBefore(date2)) { System.out.println("date1在date2之前"); } else if (date1.isAfter(date2)) { System.out.println("date1在date2之后"); } else { System.out.println("date1和date2相等"); } ``` 以上是一些常用的方法来计算日期之间的时间差。如果你有其他相关问题,请继续提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lovme_du

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值