用 Java 获取本月的最后一个星期五

2024-01-02

我正在开发一个项目,要求将日期计算为给定月份的最后一个星期五。我想我有一个仅使用标准 Java 的解决方案,但我想知道是否有人知道更简洁或更高效的解决方案。以下是我今年测试的内容:

    for (int month = 0; month < 13; month++) {
        GregorianCalendar d = new GregorianCalendar();
        d.set(d.MONTH, month);
        System.out.println("Last Week of Month in " + d.getDisplayName(d.MONTH, Calendar.LONG, Locale.ENGLISH) + ": " + d.getLeastMaximum(d.WEEK_OF_MONTH));
        d.set(d.DAY_OF_WEEK, d.FRIDAY);
        d.set(d.WEEK_OF_MONTH, d.getActualMaximum(d.WEEK_OF_MONTH));
        while (d.get(d.MONTH) > month || d.get(d.MONTH) < month) {
            d.add(d.WEEK_OF_MONTH, -1);
        }
        Date dt = d.getTime();
        System.out.println("Last Friday of Last Week in  " + d.getDisplayName(d.MONTH, Calendar.LONG, Locale.ENGLISH) + ": " + dt.toString());
    }

让 Calendar.class 为您发挥它的魔力;)

pCal.set(GregorianCalendar.DAY_OF_WEEK,Calendar.FRIDAY);
pCal.set(GregorianCalendar.DAY_OF_WEEK_IN_MONTH, -1);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用 Java 获取本月的最后一个星期五 的相关文章

随机推荐

  • Python:如何检查文件夹中的文件夹? [复制]

    这个问题在这里已经有答案了 首先 如果标题不清楚 请允许我道歉 为了简化我在工作中执行的任务 我开始编写此脚本来自动从特定路径中删除文件 我的问题是 在当前状态下 此脚本不会检查文件夹的内容within路径提供的文件夹 我不知道如何解决这个
  • 获得第一个版本的 Git 工作流程

    使用 git 我了解分支以及如何在网站上线后使用 master develop feature 分支等进行开发 但是对于为了获得站点的第一个版本构建而进行的最初的大部分开发 大约 12 周 我不太确定最佳的分支策略 在这个阶段直接提交并推送
  • 猫鼬中的 .in() 和 all.() 运算符有什么区别?

    我只是好奇猫鼬查询中 in 和 all 方法有什么区别 你能用一个简单的例子来解释一下吗 all运算符检索包含我们传递的值的子集的所有文档 该子集可以是任何顺序 in运算符检索包含我们传递的任一值的所有文档 例如 考虑包含以下文档的 技能
  • 如何将 package.json 版本 ID 部署到 AppEngine 灵活环境 --version 参数?

    App Engine 灵活环境部署使用gcloud app deploy通常速度很慢 因为 AppEngine 必须在部署代码并将流量切换到容器环境之前启动容器环境 加快部署速度的常用方法是指定版本 这样 AppEngine 将新代码部署到
  • 在 Excel VBA 中使用 C++ DLL

    我创建了MathFuncsDll dll from https msdn microsoft com de de library ms235636 aspx https msdn microsoft com de de library ms
  • 以编程方式创建/维护 SharePoint 快速启动菜单的最佳方法

    我们有一个部署多个列表和页面的解决方案 当某个功能被激活时 我们不想在 快速启动 菜单上自动为它们创建链接 结构可能是这样的 Customers Active Inactive Sales Quotes Orders 等等 网站集管理员可能
  • Python 3将字典更新方法映射到其他字典列表[重复]

    这个问题在这里已经有答案了 在 Python 2 中我可以执行以下操作 gt gt d a 1 gt gt extras b 2 c 4 gt gt map d update extras gt gt d c gt gt 4 在Python
  • 如何将数据分成 3 组(训练、验证和测试)?

    我有一个 pandas 数据框 我希望将其分为 3 个独立的集合 我知道使用训练测试分割 http scikit learn org stable modules generated sklearn cross validation tra
  • 使用 JavaScript/jQuery 更改表单的操作

    我遇到了一个让我抓狂的问题 我正在尝试修改 openid 选择器以支持 facebook 我使用 RPXNow 作为我的提供程序 因此它要求将表单提交到与标准不同的 url 例如 RpxNow 要求我像这样设置我的表单
  • 检查一个向量是否是 R 中另一个向量的超集

    我有以下向量列表 a lt c 1 2 4 5 6 7 8 9 b lt c 1 2 4 5 c lt c 1 2 3 10 11 12 13 14 d lt c 1 2 3 10 15 16 17 18 19 e lt c 1 2 3 1
  • 移动设备上的字体非常小

    我有一个 p 块在一个巨大的 p div 在我的 html 主体中 80 在font size 而且我还有一个页脚 div 在我身体的下部 页脚的文字也占了80 font size 如果我在PC上测试它是相等的 但如果我在移动设备上测试它
  • Mongodb:活动:失败(结果:退出代码)

    gt mongod service MongoDB Database Server gt Loaded loaded lib systemd system mongod service enabled vendor preset enabl
  • 我如何用图像填充矩形?

    通常你可以在画布上填充一个矩形ctx fillStyle whatever color here 进而ctx fillRect cords and length and width here 有没有一种语法可以让我说ctx fillRect
  • reloadAllTimelines 不适用于 UserDefaults

    我的小部件从以下位置加载一些数据UserDefaults Appgroups并根据它显示一些文本和图片 这适用于第一次启动 如果我更改 UserDefaults 并使用WidgetCenter shared reloadAllTimelin
  • Django 表单有选择但也有自由文本选项?

    我正在寻找什么 一个小部件 为用户提供一个下拉选择列表 但下面还有一个文本输入框 供用户输入新值 后端模型将有一组默认选择 但不会在模型上使用choices关键字 我知道我可以 而且我已经 通过让表单同时具有 ChoicesField 和
  • 如何在 flutter 构建窗口中包含 dll

    我正在开发一个在开发中运行良好的 flutter 项目 但是我不知道如何让构建包含使用 FFI 引用的 dll 我找不到关于如何执行此操作的明确说明 我尝试按照以下步骤构建 msixhere https flutter dev deskto
  • 如何在 pandas 数据框中进行 SQL 样式聚合

    我希望有一个SQLPython 中的样式聚合 Example DataFrame df pd DataFrame ID 1 1 2 2 2 revenue 1 3 5 1 5 month 2012 01 01 2012 01 01 2012
  • numpy:将 argsort 应用于数组

    The argsort http docs scipy org doc numpy reference generated numpy argsort html numpy argsort函数返回一个索引矩阵 可用于索引原始数组 以便结果与
  • bash 合并多行

    我有一个文件看起来像 id001 success 100 id002 success 99 id002 failed 1 id003 failed 100 id004 success 50 id004 failed 50 我想将其格式化为
  • 用 Java 获取本月的最后一个星期五

    我正在开发一个项目 要求将日期计算为给定月份的最后一个星期五 我想我有一个仅使用标准 Java 的解决方案 但我想知道是否有人知道更简洁或更高效的解决方案 以下是我今年测试的内容 for int month 0 month lt 13 mo