1 packagecom.study.string;2
3 importjava.text.ParseException;4 importjava.text.SimpleDateFormat;5 importjava.util.Calendar;6 importjava.util.Date;7 importjava.util.GregorianCalendar;8
9 public classDateBase {10
11 public static void main(String[] args) throwsParseException {12 /*
13 * 获得当前时间14 */
15 Date date1 = newDate();16 long long1 = date1.getTime();//date类型,转为 long类型
17 System.out.println(date1);//Sat Aug 26 08:36:36 GMT+08:00 2017
18 System.out.println(long1);//1503708031359
19
20 Calendar cale1 =Calendar.getInstance();21 date1 = cale1.getTime();//calendar 类型 转为 date类型
22 long1 =date1.getTime();23 System.out.println(cale1);24 System.out.println(date1);//Sat Aug 26 08:36:36 GMT+08:00 2017
25 System.out.println(long1);26
27 /*
28 *设置时间29 */
30 long1 += 24*60*60*1000;31 date1.setTime(long1);32 System.out.println(date1);//Sun Aug 27 08:43:26 GMT+08:00 2017
33
34 /*
35 * 格式化时间日期,无参数的默认格式,有参数的自定义格式。36 * Date -> String 用 format()37 * String -> Date 用 parse()38 */
39 SimpleDateFormat sim1 = new SimpleDateFormat();//默认格式:17-8-27 上午8:45
40 String time1 =sim1.format(date1);41 System.out.println(time1);//17-8-27 上午8:45
42 Date date11 =sim1.parse(time1);43 System.out.println(date11);44
45 SimpleDateFormat sim2 = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss sss");46 String time2 =sim2.format(date1);47 System.out.println(time2);//2017-08-27 08:47:58 058
48 Date date22=sim2.parse(time2);49 System.out.println(date22);//Sun Aug 27 08:52:08 GMT+08:00 2017
50
51 /*
52 * 创建指定日期 String53 * GregorianCalendar54 */
55 SimpleDateFormat sim3 = new SimpleDateFormat("yyyy-MM-dd");56 String str1 = "2014-09-27";57 Date date33 =sim3.parse(str1);58 System.out.println(date33);//Sat Sep 27 00:00:00 GMT+08:00 2014
59
60
61 GregorianCalendar gre1 = new GregorianCalendar(2015,Calendar.DECEMBER,25);62 Date date44 =gre1.getTime();63 System.out.println(date44);//Fri Dec 25 00:00:00 GMT+08:00 2015
64
65
66 Calendar cal2 =Calendar.getInstance();67 cal2.set(Calendar.YEAR, 2017);68 cal2.set(Calendar.MONTH, 7);//月份的数字与 第几个月差1, 8 == Calendar.SEPTEMBER
69 cal2.set(Calendar.DATE, 26);//Tue Sep 09 09:04:25 GMT+08:00 200870 //cal2.set(Calendar.DAY_OF_MONTH, 12);
71 System.out.println(cal2.getTime());//Sat Aug 26 09:09:44 GMT+08:00 2017
72
73
74
75 /*
76 * 获取年月日,星期,时间77 */
78 int dayOfweek =cal2.get(Calendar.DAY_OF_WEEK);79 System.out.println(dayOfweek);//7 是星期六
80
81
82 /*
83 * Calendar 的时间加减84 */
85 Calendar cal3 =Calendar.getInstance();86 cal3.add(Calendar.YEAR, 1);87 cal3.add(Calendar.MONTH, -2);88 System.out.println(cal3.getTime());//Tue Jun 26 09:14:11 GMT+08:00 2018
89
90
91 /*
92 *93 */
94 Calendar cal4 =Calendar.getInstance();95 cal4.set(Calendar.YEAR, 2016);96 cal4.set(Calendar.DATE, 1);97 //每个月的最后 一天
98 for(int month = Calendar.JANUARY;month
101 cal4.getActualMaximum(Calendar.DATE)+"日");102 }/*
103 2016年1月31日104 2016年2月29日105 2016年3月31日106 2016年4月30日107 2016年5月31日108 2016年6月30日109 2016年7月31日110 2016年8月31日111 2016年9月30日112 2016年10月31日113 2016年11月30日114 */
115
116 //直接创建long 型的时间
117 long long2 =System.currentTimeMillis();118 Date daten = newDate(long2);119 System.out.println(daten);//Sat Aug 26 09:41:08 GMT+08:00 2017
120 }121
122 }