LocalDateTime之adjustInto的用法及使用场景

LocalDateTime之adjustInto的用法及使用场景

对于LocalDateTime的方法在工作中已经用到了很多常见且好用的方法。例如LocalDateTime.now(),afterDateTime.isAfter(localDateTime)等。今天查看源码还有一个adjustInto(Temporal temporal)是之前不曾用到,就研究了一下。

使用方法


import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.temporal.Temporal;

public class LocalDateTimeTest {

    public static void main(String[] args) {

        LocalTime local = LocalTime.parse("23:59:59");

        LocalDateTime passTemporal = LocalDateTime.now().plusDays(1L);

        System.out.println("passTemporal : " + passTemporal);

        Temporal returnTemporal = local.adjustInto(passTemporal);

        System.out.println("adjustInto   : " + returnTemporal);

    }

}

先执行后再说明此方法的作用和使用场景:

passTemporal : 2020-09-24T16:53:41.044
adjustInto   : 2020-09-24T23:59:59

local 变量是需要调整的值。
passTemporal 是要调整的对象。

源码注释的描述是:

Adjusts the specified temporal object to have the same time as this object.
调整指定的时间对象,使其与此对象具有相同的时间。

刚看的时候一脸蒙蔽,不知道说的是个啥,这个时候就要动手自己跑一下,光看是不知道返回结果的。当然也不会真正明白这个方法的含义,所以动起来才能掌握更多。

结合返回值我的理解是:

把指定的值赋值给传入的对象,使其拥有相同的时间。

然后再看上面的源码注释就豁然开朗了。

使用场景

很多需求都会用到过期时间的场景,指定某天后的当天晚上23:59:59结束某某活动,就可以使用到这个方法。

参考博客

  1. LocalTime adjustInto()用法及使用代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值