首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

怎么获取上上个季度最后一天日期

2012-06-20 
如何获取上上个季度最后一天日期?如上,谁有类似的代码,请教下[解决办法]如果是ORACLE就好办了,直接减天数,

如何获取上上个季度最后一天日期?
如上,谁有类似的代码,请教下

[解决办法]
如果是ORACLE就好办了,直接减天数,你算好天数就行
select sysdate,add_months(sysdate,-12) from dual; --减1年
select sysdate,add_months(sysdate,-1) from dual; --减1月
select sysdate,to_char(sysdate-7,'yyyy-mm-dd HH24:MI:SS') from dual; 
--减1星期
select sysdate,to_char(sysdate-1,'yyyy-mm-dd HH24:MI:SS') from dual; 
--减1天
select sysdate,to_char(sysdate-1/24,'yyyy-mm-dd HH24:MI:SS') from 
dual; --减1小时
select sysdate,to_char(sysdate-1/24/60,'yyyy-mm-dd HH24:MI:SS') from 
dual; --减1分钟
select sysdate,to_char(sysdate-1/24/60/60,'yyyy-mm-dd HH24:MI:SS') 
from dual; --减1秒
[解决办法]

Java code
Date date = new Date(System.currentTimeMillis()) ;        int month = date.getMonth() ;        if(0<=month&& month<=2){             System.out.println("09月30日");         }        if(3<=month&& month<=5){              System.out.println("12月31日");         }        if(6<=month&& month<=8){              System.out.println("03月31日");         }if(9<=month&& month<=11){              System.out.println("06月30日");         }
[解决办法]
同意huage1998
思路要开阔一些,事情没那么复杂

另外,huage1998好像没有考虑年的部分
[解决办法]
上上个季度最后一天日期,月和日就是固定的4种值,因此
Java code
    /**     * 取得上上季度最后一天日期     * @param date 日期     * @return     */    public String getLastDay(Date date){        //取得日历        Calendar calendar = Calendar.getInstance();        calendar.setTime(date);                // 日历减6个月,即上上季度        calendar.add(Calendar.MONTH,-6);                int year = calendar.get(Calendar.YEAR);// 上上季度的年份        int mouth = calendar.get(Calendar.MONTH);// 上上季度的月份        String mmdd = "";// 月/日        // 根据月份,判断是哪个季度        switch( mouth){            case 1:            case 2:                case 3:                    mmdd = "3/31"; // 第一季度最后一天是3/31                break;            case 4:            case 5:                case 6:                    mmdd = "6/30"; // 第二季度最后一天是6/30                break;            case 7:            case 8:                case 9:                    mmdd = "9/30";// 第三季度最后一天是9/30                break;            case 10:            case 11:                case 12:                    mmdd = "12/31";// 第四季度最后一天是12/31                break;        }                String lastDate = String.valueOf(year) + "/" + mmdd;        System.out.println(lastDate);        return lastDate;    } 

热点排行