zoukankan      html  css  js  c++  java
  • java获得上下周及本周日期

        public static SimpleDateFormat getFormat(String format) {
            return new SimpleDateFormat(format);
        }
    
        /**
         * 获取上周周几的日期,默认一周从周一开始
         * 
         * @param dayOfWeek
         * @param weekOffset
         * @return
         */
        public static Date getDayOfWeek(int dayOfWeek, int weekOffset) {
            return getDayOfWeek(Calendar.MONDAY, dayOfWeek, weekOffset);
        }
    
        /**
         * 获取上(下)周周几的日期
         * 
         * @param firstDayOfWeek {@link Calendar} 值范围 <code>SUNDAY</code>,
         *                       <code>MONDAY</code>, <code>TUESDAY</code>,
         *                       <code>WEDNESDAY</code>, <code>THURSDAY</code>,
         *                       <code>FRIDAY</code>, and <code>SATURDAY</code>
         * @param dayOfWeek      {@link Calendar}
         * @param weekOffset     周偏移,上周为-1,本周为0,下周为1,以此类推
         * @return
         */
        public static Date getDayOfWeek(int firstDayOfWeek, int dayOfWeek, int weekOffset) {
            if (dayOfWeek > Calendar.SATURDAY || dayOfWeek < Calendar.SUNDAY) {
                return null;
            }
            if (firstDayOfWeek > Calendar.SATURDAY || firstDayOfWeek < Calendar.SUNDAY) {
                return null;
            }
            Calendar date = Calendar.getInstance(Locale.CHINA);
            date.setFirstDayOfWeek(firstDayOfWeek);
            // 周数减一,即上周
            date.add(Calendar.WEEK_OF_MONTH, weekOffset);
            // 日子设为周几
            date.set(Calendar.DAY_OF_WEEK, dayOfWeek);
            // 时分秒全部置0
            date.set(Calendar.HOUR_OF_DAY, 0);
            date.set(Calendar.MINUTE, 0);
            date.set(Calendar.SECOND, 0);
            date.set(Calendar.MILLISECOND, 0);
            return date.getTime();
        }
    
        public static void main(String[] args) {
            System.out.println(
                    getFormat(DateTimeUtil.YEAR_MONTH_DATE_2).format(getDayOfWeek(Calendar.MONDAY, -1)));
            System.out.println(
                    getFormat(DateTimeUtil.YEAR_MONTH_DATE_2).format(getDayOfWeek(Calendar.SUNDAY, -1)));
        }
  • 相关阅读:
    转 configure: error: Cannot find ldap.h
    DDoS(Distributed Denial of Service,分布式拒绝服务)
    j2ee 1.5和1.6的区别
    机器学习
    免安装版Tomcat6.0启动方法
    mysql补充(2)常用sql语句
    mysql补充(4)数据完整性
    mysql补充(3)优化sql语句查询常用的30种方法
    mysql补充(1)校对集utf8_unicode_ci与utf8_general_ci
    jdbc(1)(一)
  • 原文地址:https://www.cnblogs.com/shihaiming/p/10449243.html
Copyright © 2011-2022 走看看