当前位置: 首页 > news >正文

【工具类】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(),可先用变量保存当前日期。


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

本文完结!

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

相关文章:

  • Linux killall 命令使用详解
  • Springboot项目集成maven-assembly-plugin进行打包
  • Kubeasz工具快速部署K8Sv1.27版本集群(二进制方式)
  • Angular 2 JavaScript:深度解析与实战指南
  • Python 编程题 第十一节:选择排序、插入排序、删除字符、目标移动、尾部的0
  • AI Agent深度进化论:从多模态感知到自主决策革命的行业落地全景透视
  • 【PCB工艺】电流、电压与电阻的关系 以及 含有电容和电感的电路
  • HTML基础内容3
  • 胜科纳米上市在即:营收连增多年,失效分析、材料分析技术市场领先
  • 极简桌面待办清单软件,❌不会增加工作量
  • 遗传算法+四模型+双向网络!GA-CNN-BiLSTM-Attention系列四模型多变量时序预测
  • kubectl describe pod 命令以及输出详情讲解
  • 1.小乌龟速度控制
  • swagger ui 界面清除登录信息的办法
  • 嵌入式硬件篇---龙芯GPIO控制
  • Python基于深度学习的中文情感分析系统(V2.0,附源码,文档说明)
  • 【DRAM存储器四十七】LPDDR5介绍--LPDDR5的低功耗技术之DVFS
  • 股票:大盘定义及S成长性
  • 网络编程 day04
  • 构建企业核心竞争力深入解析某著名企业卓越运营管理框架(71页PPT)(文末有下载方式)
  • 魔都眼|上海多家商场打开绿色通道,助力外贸出口商品转内销
  • 十四届全国政协原常委、民族和宗教委员会原副主任苟仲文被提起公诉
  • “五一”假期国内出游3.14亿人次,国内游客出游总花费1802.69亿元
  • 山大齐鲁医院回应护士论文现“男性确诊子宫肌瘤”:给予该护士记过处分、降级处理
  • 戴紫薇评《不像说母语者》丨后殖民语境下的母语追寻
  • 抗战回望18︱《广西学生军》:“广西的政治基础是青年”