Java中Date和Calendar是用于表示日期/时间的两个class,两者可以相互转换。
示例:
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class HelloDate {
public static void main(String[] args) {
simpleDateFormatExample1();
simpleDateFormatExample2();
simpleDateFormatExample3();
}
private static void simpleDateFormatExample1() {
System.out.println("simpleDateFormatExample1:");
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String dateString = "2014-09-03";
Date date = null;
try {
date = format.parse(dateString);
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println(date);
}
private static void simpleDateFormatExample2() {
System.out.println("simpleDateFormatExample2:");
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String dateString = "09-03";
Date date = null;
try {
date = format.parse(dateString);
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println(date);
}
private static void simpleDateFormatExample3() {
System.out.println("simpleDateFormatExample3:");
SimpleDateFormat format = new SimpleDateFormat("MM-dd");
String dateString = "09-03";
Date date = null;
try {
date = format.parse(dateString);
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println(date);
// Set a Calendar with Date
Calendar calendar = Calendar.getInstance();
calendar.setTime(date);
// set year/month/day etc
calendar.set(Calendar.YEAR, 2014);
// Set a Date with Calendar
date = calendar.getTime();
System.out.println(date);
}
}
运行结果:
simpleDateFormatExample1:
Wed Sep 03 00:00:00 CST 2014
simpleDateFormatExample2:
java.text.ParseException: Unparseable date: "09-03"
at java.text.DateFormat.parse(DateFormat.java:366)
at HelloDate.simpleDateFormatExample2(HelloDate.java:38)
at HelloDate.main(HelloDate.java:11)null
simpleDateFormatExample3:
Thu Sep 03 00:00:00 CST 1970
Wed Sep 03 00:00:00 CST 2014