国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

java時間處理Calendar使用小記

2019-11-14 10:57:58
字體:
供稿:網(wǎng)友
我理解Calendar類主要對于獲取某些特定特殊的時間時特別方便,比如月的最后一天,月的某一個星期,星期的某一天,年的某一天等等,并且和date類相互可以轉(zhuǎn)換注意: Calendar.MONTH 的值是從0-11表示12個月JANUARY   0FEBRUARY  1MARCH     2APRIL     3MAY       4JUNE      5JULY      6AUGUST    7SEPTEMBER 8OCTOBER   9NOVEMBER  10

DECEMBER  11

    /**    * 取得當(dāng)天0點時間   2017-02-04 00:00:00    * @return  毫秒級時間戳    */    public static long getDayZero(long date) {        Calendar calendar = Calendar.getInstance();        //設(shè)置為入?yún)r間        calendar.setTimeInMillis(date);        //取得當(dāng)天的起始時間        calendar.set(Calendar.HOUR_OF_DAY,0);        calendar.set(Calendar.MINUTE, 0);        calendar.set(Calendar.SECOND, 0);        calendar.set(Calendar.MILLISECOND, 0);        //取得當(dāng)天的結(jié)束時間        calendar.add(Calendar.DATE,1);        calendar.add(Calendar.MILLISECOND,-1);        return calendar.getTimeInMillis();    }    /**     * 入?yún)r間所在月份的第一天     * @param date 入?yún)r間 毫秒     * @return     */    public static long getFirstDayOfMonth(long date){        Calendar calendar = Calendar.getInstance();        //設(shè)置為入?yún)r間        calendar.setTimeInMillis(date);        calendar.set(Calendar.DAY_OF_MONTH,1);        //可以設(shè)置當(dāng)天的起始時間或者結(jié)束時間        //起始時間  0點0分0秒0毫秒        calendar.set(Calendar.HOUR_OF_DAY,0);        calendar.set(Calendar.MINUTE,0);        calendar.set(Calendar.SECOND,0);        calendar.set(Calendar.MILLISECOND,0);        //結(jié)束時間  23點59分59秒999毫秒        calendar.set(Calendar.HOUR_OF_DAY,23);        calendar.set(Calendar.MINUTE,59);        calendar.set(Calendar.SECOND,59);        calendar.set(Calendar.MILLISECOND,999);        return calendar.getTimeInMillis();    }    /**     * 入?yún)r間所在月份的最后一天 有很多方式實現(xiàn)     * @param date 入?yún)r間 毫秒     * @return     */    public static long getLastDayOfMonth(long date){        Calendar calendar = Calendar.getInstance();        //設(shè)置為入?yún)r間        calendar.setTimeInMillis(date);        /*---------------------------------------------*/        //當(dāng)前時間月份加一,設(shè)置天是月份的第一天,再減一天就是當(dāng)月的最后一天        calendar.add(Calendar.MONTH,1);        calendar.set(Calendar.DAY_OF_MONTH,1);        calendar.add(Calendar.DATE,-1);        //可以設(shè)置當(dāng)天的起始時間或者結(jié)束時間        //起始時間  0點0分0秒0毫秒        calendar.set(Calendar.HOUR_OF_DAY,0);        calendar.set(Calendar.MINUTE,0);        calendar.set(Calendar.SECOND,0);        calendar.set(Calendar.MILLISECOND,0);        /*--------------------如果不關(guān)心具體時間也可以根據(jù)毫秒減一獲得-------------------------*/        calendar.add(Calendar.MONTH,1);        calendar.set(Calendar.DAY_OF_MONTH,1);        //設(shè)置為當(dāng)天的起始時間 0點0分0秒0毫秒 ,再將時間減掉一毫秒        calendar.set(Calendar.HOUR_OF_DAY,0);        calendar.set(Calendar.MINUTE,0);        calendar.set(Calendar.SECOND,0);        calendar.set(Calendar.MILLISECOND,0);        calendar.add(Calendar.MILLISECOND,-1);        return calendar.getTimeInMillis();    }    /**     * 入?yún)r間上個月份的最后一天     * @param date 入?yún)r間 毫秒     * @return     */    public static long getPreviousMonthLastDay(long date){        Calendar calendar = Calendar.getInstance();        //設(shè)置為入?yún)r間        calendar.setTimeInMillis(date);        calendar.set(Calendar.DAY_OF_MONTH,0);        return calendar.getTimeInMillis();    }    /**     * 入?yún)r間的前一天     * 獲得當(dāng)前時間的前幾天,幾分鐘,幾秒 直接使用 calendar.add()填寫需要增加或者減少的屬性 和值 即可     * @param date 入?yún)r間 毫秒     * @return     */    public static long getPreviousDay(long date){        Calendar calendar = Calendar.getInstance();        //設(shè)置為入?yún)r間        calendar.setTimeInMillis(date);        calendar.add(Calendar.DATE,-1);        //calendar.add(Calendar.MONDAY,-1);        //calendar.add(Calendar.YEAR,-1);        //calendar.add(Calendar.HOUR,-1);        //calendar.add(Calendar.MINUTE,-1);        //calendar.add(Calendar.SECOND,-1);        //calendar.add(Calendar.MILLISECOND,-1);        return calendar.getTimeInMillis();    }    /**     * 入?yún)r間是當(dāng)月的第幾個week     * @param date     * @return     */    public static int getWeekOfMonth(long date){        Calendar calendar = Calendar.getInstance();        //設(shè)置為入?yún)r間        calendar.setTimeInMillis(date);        return calendar.get(Calendar.WEEK_OF_MONTH);    }    /**     * 入?yún)r間是當(dāng)年的第幾個week     * @param date     * @return     */    public static int getWeekOfYear(long date){        Calendar calendar = Calendar.getInstance();        //設(shè)置為入?yún)r間        calendar.setTimeInMillis(date);        return calendar.get(Calendar.WEEK_OF_YEAR);    }    /**     * 入?yún)r間是當(dāng)年的第幾天     * @param date     * @return     */    public static int getDayOfYear(long date){        Calendar calendar = Calendar.getInstance();        //設(shè)置為入?yún)r間        calendar.setTimeInMillis(date);        return calendar.get(Calendar.DAY_OF_YEAR);    }    /**     * 入?yún)r間是當(dāng)月的第幾天     * @param date     * @return     */    public static int getDayOfMonth(long date){        Calendar calendar = Calendar.getInstance();        //設(shè)置為入?yún)r間        calendar.setTimeInMillis(date);        return calendar.get(Calendar.DAY_OF_MONTH);    }    /**     * 獲取前N個月的起始時間,n為0表示當(dāng)前月,1表示前一個月     * @param n     * @return 單位毫秒     */    public static long getLastNMonthStartTime(int n) {        Calendar calendar = Calendar.getInstance();        calendar.set(Calendar.DAY_OF_MONTH, 1);        calendar.set(Calendar.HOUR_OF_DAY, 0);        calendar.set(Calendar.MINUTE, 0);        calendar.set(Calendar.SECOND, 0);        calendar.set(Calendar.MILLISECOND, 0);        calendar.add(Calendar.MONTH, 0 - n);        return calendar.getTimeInMillis();    }    /**     * 獲取前N個月的終止時間,n為0表示當(dāng)前月,1表示前一個月     * @param n     * @return 單位毫秒     */    public static long getLastNMonthEndTime(int n) {        Calendar calendar = Calendar.getInstance();        calendar.set(Calendar.DAY_OF_MONTH, 1);        calendar.set(Calendar.HOUR_OF_DAY, 0);        calendar.set(Calendar.MINUTE, 0);        calendar.set(Calendar.SECOND, 0);        calendar.set(Calendar.MILLISECOND, 0);        calendar.add(Calendar.MONTH, 0 - n + 1);        calendar.add(Calendar.MILLISECOND ,-1);        return calendar.getTimeInMillis();    }    public static void main(String[] args){        System.out.println(DateTimeUtil.getDateTimeString(getDayZero(System.currentTimeMillis())));        System.out.println(getWeekOfMonth(System.currentTimeMillis()));        System.out.println(getWeekOfYear(System.currentTimeMillis()));        System.out.println(getDayOfMonth(System.currentTimeMillis()));        System.out.println(getDayOfYear(System.currentTimeMillis()));    }


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 奎屯市| 庆云县| 衡阳市| 右玉县| 双流县| 衡东县| 沅陵县| 北川| 东莞市| 伊宁市| 方正县| 若尔盖县| 视频| 左云县| 旺苍县| 游戏| 巴青县| 什邡市| 江西省| 禹城市| 铁岭市| 武威市| 江陵县| 巴林左旗| 赞皇县| 苍梧县| 天柱县| 临潭县| 涟水县| 安福县| 渝中区| 故城县| 深水埗区| 泰来县| 普兰店市| 武功县| 锦州市| 兴业县| 昆明市| 广州市| 额敏县|