h249059945的专栏

技术博客

关于Calendar的使用

今天在使用calendar类获取上个月的第一天、上个月的最后一天、本月的第一天、本月的最后一天的时候(同时获取),发现一个问题。就是时间月份总是有差别,经过查jdk文档和调试才知道,对于Calendar.add方法和roll会自动更新原来是时间,强迫改变,但是使用set方法则不会。而且使用set方法更加人性化,显示出来的时期更加直观。

   
    //获取上个月的第一天
    public static void  getfof(){
         //获取上个月 第一天
        Calendar c=Calendar.getInstance();
          c.add(Calendar.MONTH, -1);
          c.set(Calendar.DAY_OF_MONTH, 1);
          System.out.println(c.getTime());
        
    }
    
    /**
     * 获取当前日历的上一个月的最后一天
     * @param cal
     * @return
     */
    public static void getlofl(){
        Calendar c=Calendar.getInstance();
        c.set(Calendar.DAY_OF_MONTH, 0);
        System.out.println(c.getTime());
    }
    
    /**
     * 获取当前日历的这个月的第一天
     * @param cal
     * @return
     */
    public static void getfoft(){
        Calendar c=Calendar.getInstance();
        c.set(Calendar.DAY_OF_MONTH, 1);
        System.out.println(c.getTime());
    }
    
    /**
     * 获取当前日历的这个月的最后一天
     * @param cal
     * @return
     */
    public static void  getloft(){
        Calendar c=Calendar.getInstance();
        c.set(Calendar.DAY_OF_MONTH, c.getActualMaximum(Calendar.DAY_OF_MONTH));
        System.out.println(c.getTime());
    }



阅读更多
个人分类: javase
上一篇关于EAS Bos工作区间和开发平台移动需要注意的问题
下一篇关于使用Arrays.copyOf()方法
想对作者说点什么? 我来说一句

使用Month Calendar获取日期

2010年07月01日 64KB 下载

没有更多推荐了,返回首页

关闭
关闭