获取上个季度的结束日期

时间:2012-06-08 19:28:10

标签: java date

在给定日期,如何获得上一季度的结束日期?我需要经营一份工作,考虑到这一点。 编辑:第一季度是1月,2月,3月;第二个是4月,5月,6月,等等;

感谢任何帮助。感谢

4 个答案:

答案 0 :(得分:7)

基本上:

  1. 弄清楚哪个是当前季度
  2. 返回上一季度的最后日期(3月31日,6月30日,9月30日,12月31日)
  3. 所以要弄清楚当前季度: int quarter = (myDate.getMonth() / 3) + 1; (请注意,getMonth()已弃用,以支持Calendar.get(Calendar.MONTH)。)

    然后将上一季度与日期相匹配。

    int prevQuarter = (myDate.getMonth() / 3); 
    switch(prevQuarter) {
        case 3 : 
            // return September 30
        case 2 :
            // return June 30
        case 1 :
            // return March 31
        case 0 : default :
            // return December 31
    }
    

答案 1 :(得分:2)

这是我的一些非常古老的代码;但是,getQuarter()方法可能会做你需要的 - 或者至少让你知道如何去做。

https://github.com/cjstehno/codeperks/blob/master/src/main/java/com/stehno/codeperks/lang/DateUtils.java

希望这有帮助。

C

答案 2 :(得分:1)

井区仅在12,9,6和3个月结束。所有这些都具有静态长度。所以只有4个有效的结束日期。比较你的月份,如果它是1或2或3,答案是第1年的31.12,如果是4,5,6则是今年的31.3,如果是7,8,9则是今年的30.6 。如果它是10.11.12,今年是30.9。

答案 3 :(得分:0)

http://www.taggercat.com/docs/api/TaggerCat/com/taggercat/util/DateUtils.html#last90Days%28%29

public static java.util.Date[] last90Days()

返回表示上一季度开始和结束的两个日期

返回:表示此期间的两个日期

这将有助于使用这些日期和给定的日期,您可以确定上一季度的日期。如果我正确理解你的问题,那就是。