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

获取Java中日期的上周日期范围

皮景龙
2023-03-14
问题内容

假设我有个约会2013年6月20日

如何获取上周的日期范围,即本例中的6月9日至6月15日。

另外,如果日期是2013年6月2日

范围应该是5月26日至6月1日


问题答案:

这是基于Java日历的解决方案

    Date date = new Date();
    Calendar c = Calendar.getInstance();
    c.setTime(date);
    int i = c.get(Calendar.DAY_OF_WEEK) - c.getFirstDayOfWeek();
    c.add(Calendar.DATE, -i - 7);
    Date start = c.getTime();
    c.add(Calendar.DATE, 6);
    Date end = c.getTime();
    System.out.println(start + " - " + end);

输出

Mon Jun 10 13:22:01 EEST 2013 - Sun Jun 16 13:22:01 EEST 2013

它已本地化,在我的“语言环境”周中,从星期一开始



 类似资料:
  • 问题内容: 如何找出上一个(上一个)“星期五”或指定日期之后的其他日期的日期? 问题答案: 我不会给出答案(请先尝试一下!),但是,也许这些技巧可以为您提供帮助。 您首先需要确定您所在的星期几。您可能想看一下Java的Calendar类,以了解如何做到这一点。 确定日期后,请考虑模数运算符以及如何使用该运算符向后移动以从当前所在的日期开始寻找所需的前一天。(请记住,一周是7天,一周中的每一天在这7

  • 问题内容: 给定以下日期: 和一个静态变量: 我需要创建一个数组,如: 周末除外。 不,这不是功课…出于某种原因,我今天无法直截了当。 问题答案: 对于PHP> = 5.3.0,请使用DatePeriod类。不幸的是,几乎没有记录。

  • 问题内容: 我最近遇到了一项任务,必须在日期范围内获得所有星期五。我写了一小段代码,很惊讶地看到一些奇怪的行为。 下面是我的代码: 现在,当我运行代码时,我注意到缺少2011年的星期五。经过一些调试和在线浏览后,我发现这是特定于区域设置的,我必须使用它来修复它。 因此,在上面的代码中未注释相关行。 据我了解,一年的第一周应该从一年的整个星期开始。 例如,2010年1月1日是星期五。但它不会显示在结

  • 问题内容: 我想找到星期一,星期二,星期三等的日期戳。如果这个星期还未到这一天,我希望该日期为本周,否则为下周。谢谢! 问题答案: 看到 通过查看星期数,您可能会发现自己是否已经过了这一天:

  • 我正在寻找确切的开始和结束日期根据我们的桌面日历,如果我给周,年作为输入。但是上面的代码给出的输出是2009年1月27日星期日。我知道这是因为按照我们的说法,一周的第一天默认是星期天,但我需要按照桌面日历

  • 假设我有一些账单,上面有开始日期和结束日期。 我要检查的商业规则是 例如,3月10日到4月9日大约相隔一个月,所以我用它来检查任何两个连续的账单开始日期(4月10日和3月10日)是否相隔一个月。 现在我的问题是求周期的长度。例如,假设我有以下数据集 我正在使用JodaTime库,所以我说类似这样的话 它返回0,这是正确的,但没有用处。 结果是1,尽管相隔一天。 有什么更好的方法来做到这一点?我可以