欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > 【工具类】Java的 LocalDate 获取本月第一天和最后一天

【工具类】Java的 LocalDate 获取本月第一天和最后一天

2025/4/13 10:24:03 来源:https://blog.csdn.net/weixin_44299027/article/details/146376673  浏览:    关键词:【工具类】Java的 LocalDate 获取本月第一天和最后一天

博主介绍:✌全网粉丝22W+,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌

技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物联网、机器学习等设计与开发。

感兴趣的可以先关注收藏起来,在工作中、生活上等遇到相关问题都可以给我留言咨询,希望帮助更多的人。

Java的 LocalDate 获取本月第一天和最后一天

  • 一、方法1:使用 TemporalAdjusters(推荐)
  • 二、方法2:手动设置日期
  • 三、总结

在Java中,使用 LocalDate获取本月的第一天和最后一天可以通过以下两种方法实现:

一、方法1:使用 TemporalAdjusters(推荐)

import java.time.LocalDate;
import java.time.temporal.TemporalAdjusters;public class Main {public static void main(String[] args) {LocalDate today = LocalDate.now();// 获取本月第一天LocalDate firstDayOfMonth = today.with(TemporalAdjusters.firstDayOfMonth());System.out.println("本月第一天: " + firstDayOfMonth);// 获取本月最后一天LocalDate lastDayOfMonth = today.with(TemporalAdjusters.lastDayOfMonth());System.out.println("本月最后一天: " + lastDayOfMonth);}
}

优点:

  • 代码简洁直观,直接表达意图。
  • 自动处理不同月份的天数(如2月闰年问题)。

二、方法2:手动设置日期

import java.time.LocalDate;public class Main {public static void main(String[] args) {LocalDate today = LocalDate.now();// 获取本月第一天LocalDate firstDayOfMonth = today.withDayOfMonth(1);System.out.println("本月第一天: " + firstDayOfMonth);// 获取本月最后一天LocalDate lastDayOfMonth = today.withDayOfMonth(today.lengthOfMonth());System.out.println("本月最后一天: " + lastDayOfMonth);}
}

注意:

  • lengthOfMonth() 返回当前月份的天数,确保最后一天正确。
  • 避免多次调用 LocalDate.now(),防止跨月问题(如代码执行时刚好月末切换)。

三、总结

推荐使用 TemporalAdjusters,代码更清晰且符合Java日期API设计。

如果追求性能或避免多次调用 now(),可先用变量保存当前日期。


好了,今天分享到这里。希望你喜欢这次的探索之旅!不要忘记 “点赞” 和 “关注” 哦,我们下次见!🎈

本文完结!

祝各位大佬和小伙伴身体健康,万事如意,发财暴富,扫下方二维码与我一起交流!!!在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词