java Calendar類得到每個月的周末是幾號的工具方法


public static List getWeekendInMonth(int year, int month) {
        List list = new ArrayList();
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.YEAR, year);// 不設置的話默認為當年
        calendar.set(Calendar.MONTH, month - 1);// 設置月份
        calendar.set(Calendar.DAY_OF_MONTH, 1);// 設置為當月第一天
        int daySize = calendar.getActualMaximum(Calendar.DAY_OF_MONTH);// 當月最大天數
        for (int i = 0; i < daySize; i++) {
            calendar.add(Calendar.DATE, 1);//在第一天的基礎上加1
            int week = calendar.get(Calendar.DAY_OF_WEEK);
            if (week == Calendar.SATURDAY || week == Calendar.SUNDAY) {// 1代表周日,7代表周六 判斷這是一個星期的第幾天從而判斷是否是周末
                list.add(calendar.get(Calendar.DAY_OF_MONTH));// 得到當天是一個月的第幾天
            }
        }
        return list;
    }

 總結:

   Calendar類和Date類都表示時間,Calendar類比Date類出現的晚,Calendar類包含的操作也更加豐富。通過getTime()方法就可以得到Date對象。

   Calendar.DAY_OF_WEEK:表示當天是一個星期的第幾天(一個星期7天)。取到的對應的值為1-7,或者為 SUNDAYMONDAYTUESDAYWEDNESDAYTHURSDAYFRIDAYSATURDAY。 

   Calendar.DAY_OF_MONTH:表示當天是一個月的第幾天。一個月有28,29,30,31等天。取到的對應的值為幾號,一個月的第一天為1

   Calendar.DAY_OF_YEAR:表示當天是一年的第幾天。一年的第一天為1

   Calendar.getInstance()方法默認為當前時間點(包括年月日時分秒毫秒等信息),可以通過對應的set方法,設置對象所表示的時間,add方法 計算當前對象表示的時間經過操作后得到的時間信息。同樣new Date()方法默認表示當前時間,可以通過將字符類型轉換為Date對象來設置Date對象表示的時間


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM