Java 簡單的時間操作——簡單的加減運算

用Java計算以下時間的開始和結束時間:上一個月,這一個月,上一週,這一週

只是簡單的用到了Calendar類的get(int field) 和add(int,int) 方法。

源碼如下:

System.out.println("******lastmonth****thismonth***lastweek****thisweek***");
		String[] datePeriods = { "lastMonth", "thisMonth", "lastWeek",
				"thisWeek" };
		for (String datePeriod : datePeriods) {
			Calendar startDate = Calendar.getInstance();
			Calendar endDate = Calendar.getInstance();

			if ("lastMonth".equals(datePeriod)) {
				endDate.add(Calendar.DAY_OF_MONTH,
						-endDate.get(Calendar.DAY_OF_MONTH));
				startDate.add(
						Calendar.DAY_OF_MONTH,
						-startDate.get(Calendar.DAY_OF_MONTH) + 1
								- endDate.get(Calendar.DAY_OF_MONTH));
			} else if ("thisMonth".equals(datePeriod)) {
				startDate.add(Calendar.DAY_OF_MONTH,
						1 - endDate.get(Calendar.DAY_OF_MONTH));
			} else if ("lastWeek".equals(datePeriod)) {
				endDate.add(Calendar.DAY_OF_MONTH,
						- endDate.get(Calendar.DAY_OF_WEEK));
				startDate.add(Calendar.DAY_OF_MONTH,
						-6 - startDate.get(Calendar.DAY_OF_WEEK));
			} else {
				startDate.add(Calendar.DAY_OF_MONTH,
						1 - startDate.get(Calendar.DAY_OF_WEEK));
			}
			
			System.out.println("First Day Of "+datePeriod+" is:"+format.format(startDate.getTime()));
			System.out.println("End Day Of "+datePeriod+" is:"+format.format(endDate.getTime()));
		}


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