1. 程式人生 > >Date、Calendar、DateFormat類

Date、Calendar、DateFormat類

rgs mil oca ava sys text nbsp new form

Date類與Calendar類之間的轉換

 1 package date;
 2 
 3 import java.util.Calendar;
 4 import java.util.Date;
 5 
 6 public class DateDemo {
 7 
 8     public static void main(String[] args) {
 9         /**
10          * 可以直接輸出Date,不可以直接輸出Calendar
11          * 已知當前Date類的日期now,Calendar類的日期calendar,
12          * 1.將Date--->Calendar,用calendar.setTime(now);
13 * 2.將Calendar--->Date,那麽now=calendar.getTime(); 14 */ 15 Date now=new Date(); 16 Calendar calendar=Calendar.getInstance(); 17 long now1=System.currentTimeMillis(); 18 long now2=now.getTime(); 19 long now3=calendar.getTimeInMillis(); 20 System.out.println("now :"+now);
21 System.out.println("calendar.Year :"+calendar.get(Calendar.YEAR)); 22 System.out.println("now1 :"+now1); 23 System.out.println("now2 :"+now2); 24 System.out.println("now3 :"+now3); 25 26 calendar.add(Calendar.YEAR,-19); 27 System.out.printf("%d-%d-%d\n",calendar.get(Calendar.YEAR),
28 calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH)); 29 //Date-->Calendar 30 Calendar c1=Calendar.getInstance();//調用Calendar類中的靜態方法getInstance()來得到一個Calendar對象 31 c1.setTime(now); 32 33 //Calendar-->Date 34 Date birth=calendar.getTime(); 35 System.out.println("birth :"+birth); 36 37 System.out.println(birth.toLocaleString()); 38 39 } 40 41 }

輸出如下內容:

now :Sun Dec 30 11:32:57 CST 2018
calendar.Year :2018
now1 :1546140777528
now2 :1546140777390
now3 :1546140777468
1999-11-30
birth :Thu Dec 30 11:32:57 CST 1999
1999-12-30 11:32:57

DateFormat類:

 1 package date;
 2 
 3 import java.text.ParseException;
 4 import java.text.SimpleDateFormat;
 5 import java.util.Calendar;
 6 import java.util.Date;
 7 import java.util.Locale;
 8 
 9 public class DateFormatDemo {
10 
11     public static void main(String[] args) {
12         Date now = new Date();
13         
14         // Date ==> Calendar
15         Calendar calendar = Calendar.getInstance();
16         calendar.setTime(now);
17         
18         // 加8周
19         calendar.add(Calendar.WEEK_OF_YEAR, 8);
20         
21         // Calendar ==> Date
22         now = calendar.getTime();
23         System.out.println(now);
24         
25         // 格式化
26         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS", 
27 
28 Locale.CHINA);
29         // Date ==> String
30         String result = format.format(now);//format為DateFormat類中的一個方法,用於Formats a Date into a date/time string.
31         System.out.println(result);
32         
33         // String ==> Date
34         String d = "2018-01-12 09:21:21.000";
35         try {
36             Date date = format.parse(d);//parse解析,也是DateFormat類中的一個方法,解析給定字符串中的文本內容,以產生一個日期
37             System.out.println(date);
38         } catch (ParseException e) {
39             e.printStackTrace();
40         }
41         
42     }
43 }

Date、Calendar、DateFormat類