当前位置: 首页 > 面试题库 >

如何在Java中获得给定星期数的第一天

东门仲卿
2023-03-14
问题内容

让我解释一下自己。通过知道日期的星期数和年份:

Date curr = new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(curr);
int nweek = cal.WEEK_OF_YEAR;
int year = cal.YEAR;

但是现在我不知道如何获取该周第一天的日期。我一直在寻找Calendar,Date,DateFormat,但没有什么可能有用的…

有什么建议吗?(使用Java)


问题答案:

这些字段不返回值。这些是 常量,标识Calendar可以获取/设置/添加的对象中的字段。要实现所需的功能,您首先需要获取一个Calendar,将其清除并设置已知值。它将自动将日期设置为该周的第一天。

// We know week number and year.
int week = 3;
int year = 2010;

// Get calendar, clear it and set week number and year.
Calendar calendar = Calendar.getInstance();
calendar.clear();
calendar.set(Calendar.WEEK_OF_YEAR, week);
calendar.set(Calendar.YEAR, year);

// Now get the first day of week.
Date date = calendar.getTime();

请学会 _阅读_的的javadoc学习如何使用类/方法/字段,不要试图捅在IDE中随机;)

也就是说,java.util.Datejava.util.Calendar是史诗般的失败。如果可以,请考虑切换到Joda Time。



 类似资料:
  • 问题内容: 我正在尝试获取给定月份的第一个星期一。 我想出的最好方法是在前7天循环浏览,然后在返回时返回。有一个更好的方法吗? 问题答案: 通过查看时间的.Weekday(),您可以计算第一个星期一。

  • 问题内容: 我想找出以下内容:给定日期(对象),星期几是几号? 例如,星期日是第一天,星期一:第二天..依此类推 然后,如果输入的内容类似于今天的日期。 例 输出可能是6(因为它是星期五) 问题答案: 使用: 从文档中: 以整数返回星期几,其中星期一为0,星期日为6。

  • 问题内容: 我有一个javafx.scene.control.DatePicker。我想从所选日期中提取(区域设置)星期数。到现在为止,我还没有找到解决方案,我更喜欢不编写自己的算法。我使用Java8,希望可以在新的Java时间库中使用。 问题答案: Java-8解决方案可以使用date- picker 的值来考虑一周的本地定义: 还请记住,流行的替代《 Joda- Time》不支持这种本地化的年

  • 问题内容: 在Joda-Time中,有一种方法可以获取一周中第一天(星期一)的日期。 例如,我想根据今天的当前日期11/1/21找出本周的星期一是几号 提前加油。 编辑:我也希望找到一周结束的日期,即星期日的日期。干杯 问题答案: 试试LocalDate.withDayOfWeek:

  • 问题内容: 如果我有特定的星期数(例如51)和给定的年份(例如2008),我如何找到同一周的第一个星期一的日期? 非常感谢 问题答案: 假设一周的第一天是星期一,请使用,而不是一周的第一天是星期日。有关详细信息,请参见strptime文档。 更新: 固定星期数。该指令基于0,因此第51周应输入为50,而不是51。

  • 问题内容: 我有一个日期,以及如何使所有日期都落在给定日期所属的一周的Java中? 有人可以帮我这个吗。 我正在尝试获取给定日期的星期日期,我已经解释了为什么这个问题不是重复的,请在评论前阅读。 问题答案: 您可以尝试以下方式, 输出值