date和localdatetime转换_date和localdatetime

date和localdatetime转换_date和localdatetime/***Date转换成LocalDate*@paramdate*@return*/publicstaticLocalDatedate2LocalDate(Datedate){if(null==date){returnnull;}returndate.toInstant().atZone(ZoneId.systemDefault()).toL..

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

 /**
     * Date转换成LocalDate
     * @param date
     * @return
     */
    public static LocalDate date2LocalDate(Date date) {
        if(null == date) {
            return null;
        }
        return date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
    }

    /**
     * LocalDate转换成Date
     * @param localDate
     * @return
     */
    public static Date localDate2Date(LocalDate localDate) {
        if(null == localDate) {
            return null;
        }
        ZonedDateTime zonedDateTime = localDate.atStartOfDay(ZoneId.systemDefault());
        return Date.from(zonedDateTime.toInstant());
    }

    //获取月第一天
    public static Date getStartDayOfMonth(String date) {
        LocalDate now = LocalDate.parse(date);
        return getStartDayOfMonth(now);
    }

    public static Date getStartDayOfMonth(LocalDate date) {
        LocalDate now = date.with(TemporalAdjusters.firstDayOfMonth());
        return localDate2Date(now);
    }

    public static Date getStartDayOfMonth() {
        return getStartDayOfMonth(LocalDate.now());
    }


    //获取月最后一天
    public static Date getEndDayOfMonth(String date) {
        LocalDate localDate = LocalDate.parse(date);
        return getEndDayOfMonth(localDate);
    }

    public static Date getEndDayOfMonth(Date date) {
        return getEndDayOfMonth(date2LocalDate(date));
    }

    public static Date getEndDayOfMonth(LocalDate date) {
        LocalDate now = date.with(TemporalAdjusters.lastDayOfMonth());
        Date.from(now.atStartOfDay(ZoneId.systemDefault()).plusDays(1L).minusNanos(1L).toInstant());
        return localDate2Date(now);
    }

    public static Date getEndDayOfMonth() {
        return getEndDayOfMonth(LocalDate.now());
    }


    //获取周第一天
    public static Date getStartDayOfWeek(String date) {
        LocalDate now = LocalDate.parse(date);
        return getStartDayOfWeek(now);
    }

    public static Date getStartDayOfWeek(TemporalAccessor date) {
        TemporalField fieldISO = WeekFields.of(Locale.CHINA).dayOfWeek();
        LocalDate localDate = LocalDate.from(date);
        localDate = localDate.with(fieldISO, 1);
        return localDate2Date(localDate);
    }

    //获取周最后一天
    public static Date getEndDayOfWeek(String date) {
        LocalDate localDate = LocalDate.parse(date);
        return getEndDayOfWeek(localDate);
    }

    public static Date getEndDayOfWeek(TemporalAccessor date) {
        TemporalField fieldISO = WeekFields.of(Locale.CHINA).dayOfWeek();
        LocalDate localDate = LocalDate.from(date);
        localDate = localDate.with(fieldISO, 7);
        return Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).plusDays(1L).minusNanos(1L).toInstant());
    }

    //一天的开始
    public static LocalDateTime getStartOfDay(LocalDate date) {
        LocalDateTime time = LocalDateTime.of(date, LocalTime.MIN);
        return time;
    }

    public static LocalDateTime getStartOfDay() {
        return getStartOfDay(LocalDate.now());
    }

    /**
     * 一天的结束
     */
    public static LocalDateTime getEndOfDay(LocalDate date) {
        LocalDateTime time = LocalDateTime.of(date, LocalTime.MAX);
        return time;
    }

    public static LocalDateTime getEndOfDay() {
        return getEndOfDay(LocalDate.now());
    }
    //获取下个月的某一天
    public static LocalDate getNextMonth(String date) {
        LocalDate now = LocalDate.parse(date);
        return now.minusMonths(-1);
    }
    //获取上个月的某一天
    public static LocalDate getLastMonth(String date) {
        LocalDate now = LocalDate.parse(date);
        return now.minusMonths(1);
    }

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/186355.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • phcharm激活码(最新序列号破解)

    phcharm激活码(最新序列号破解),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    64
  • java英文文献和翻译_javaweb参考文献

    java英文文献和翻译_javaweb参考文献外文文献及翻译:JavaandtheInternet1JavaandtheInternetIfJavais,infact,yetanothercomputerprogramminglanguage,youmayquestionwhyitissoimportantandwhyitisbeingpromotedasarevolutionary…

    2022年9月27日
    0
  • Debian下安装3322动态域名更新程序

    Debian下安装3322动态域名更新程序Ez ipupdate 是一个动态域名更新程序 可以更新希网的动态域名 对于动态域名 DYNDNS service type 参数应该选择 qdns 对于静态域名 STATDNS service type 参数应该选择 qdns static 安装和使用方法 将 ez ipupdate 拷贝到 usr local bin 目录 Ez ipupdate 可以运行在以下两种方式 命

    2025年6月18日
    0
  • openstack介绍_openstack开发

    openstack介绍_openstack开发什么是云计算最早提出来是亚马逊公司,发家是靠卖书,最后自己把自己卖书的业务移到互联网上,随着自己公司业务的增加,自己公司内部服务器就不够用了,慢慢就开始做虚拟化,做了虚拟化之后,随着公司组织架构的复

    2022年8月2日
    4
  • SiamFC 学习(论文、总结与分析)

    SiamFC 学习(论文、总结与分析)文章目录前言一、SiamFC论文学习1.介绍2.深度相似学习在跟踪中的应用2.1全卷积孪生结构3.引入库二、使用步骤1.引入库2.读入数据总结前言之前看了关于siamFC的论文、博客和代码,已经跑通了代码,但是,只是大概初步学习,没有认真的研究细节。为了后面更好的学习Siam系列的算法还是要重新认真的学习SiamFC。先附上论文和代码。论文:Fully-ConvolutionalSiameseNetworksforObjectTracking代码:基于pytorch框架的htt

    2022年10月1日
    0
  • 细思极恐,你真的会写 Java 吗

    细思极恐,你真的会写 Java 吗点击上方"编程技术圈"关注,星标或置顶一起成长后台回复“大礼包”有惊喜礼包!每日英文Don'twalktooslowly,theflowerswi…

    2022年7月8日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号