獲取當前周的日期,獲取下週日期

/**
	 * 獲取本週的日期
	 * @author ywl
	 */
	public static List<String> getWeekDay() {
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		List<String> str = new ArrayList<String>();
		Calendar calendar = Calendar.getInstance();
		while (calendar.get(Calendar.DAY_OF_WEEK) != Calendar.MONDAY) {
			calendar.add(Calendar.DAY_OF_WEEK, -1);
		}
		Date[] dates = new Date[7];
		for (int i = 0; i < 7; i++) {
			dates[i] = calendar.getTime();
			calendar.add(Calendar.DATE, 1);
		}
		for (Date date : dates) {
			str.add(sdf.format(date));
		}
		return str;
	}

	/**
	 * 根據當前週日的日期獲取下週的日期
	 * @author ywl
	 * @param day
	 * @return
	 */
	public static List<String> getNextWeekDay(String day) {
		List<String> days = new ArrayList<String>();
		try {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
			Calendar cal = Calendar.getInstance();
			cal.add(Calendar.DATE, -1);
			cal.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
			cal.add(Calendar.WEEK_OF_YEAR, 1);
			System.out.println("當週的星期日日期:"+sdf.format(cal.getTime()));
			
			Calendar calendar = Calendar.getInstance();
			Date time = sdf.parse(day);
			calendar.setTime(time);
			//根據日期獲取下週日期可修改此行代碼
			//這裏使用的是當前週日的日期
			calendar.add(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);
			if (1 == calendar.get(Calendar.DAY_OF_WEEK)) {
				calendar.add(Calendar.DAY_OF_MONTH, -1);
			}
			calendar.setFirstDayOfWeek(Calendar.MONDAY);
			calendar.add(
					Calendar.DATE,
					calendar.getFirstDayOfWeek()
							- calendar.get(Calendar.DAY_OF_WEEK));
			System.out.println("下週星期一的日期:" + sdf.format(calendar.getTime()));

			Date[] dates = new Date[7];
			for (int i = 0; i < 7; i++) {
				dates[i] = calendar.getTime();
				calendar.add(Calendar.DATE, 1);
			}
			for (Date date : dates) {
				days.add(sdf.format(date));
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
		return days;
	}
	public static void main(String[] args) {
		List<String> days = getWeekDay();
		//傳入當前周的週日
		List<String> day = getNextWeekDay(days.get(days.size()-1));
		System.out.println(day);
	}



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章