import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateHandle {
public static void main(String[] args) {
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") ;
Calendar calendar = Calendar.getInstance() ;
Date date = calendar.getTime() ;
System.out.println(format.format(date));
String myDate = "2003-12-13 10:12:13" ;
Date mDate = null ;
try {
mDate = format.parse(myDate);
calendar.setTime(mDate) ;
System.out.println(calendar.get(Calendar.DAY_OF_MONTH));
//一月中的第幾天,比如:1月1號即爲一月的第一天
System.out.println(calendar.get(Calendar.DAY_OF_WEEK)); //一週中的第幾天,週日爲第一天,週六爲第七天
System.out.println(calendar.get(Calendar.MONTH));
//得到月份,實際月份應該是:該值+1,比如:輸出值爲11,表示每年的12月份
} catch (ParseException e) {
e.printStackTrace();
}
}
}
常用計算:
1.假設該天爲星期m,則n天之後是星期q: q = m + (n % 7)
2.一年有365天,2001年的今天是星期2, 2002年的今天是: 2 + 365 % 7 = 2 + 1 = 3, 不信你查日曆表。
因爲 365 = 7 * x + 1, 因此,每過一年的同月同日星期數便加1。
3.閏年有366天,因此如果月份大於2,則每過一年的同月同日星期數除了要加1,還要再加間隔的閏年數。
4.每四年有一個閏年,每一百年要減去一個閏年,每四百年要加回一個閏年。