java编程--01介绍日期的比较

引子:平时开发常常需要对时间进行格式化,进行比较,进行加减计算。最常用的类不外乎:SimpleDateFormat,Calendar,Date,DateTimeStamp等。下面想对java中的日期编程进行总结。

第一篇,介绍日期的比较

第二篇,介绍日期的格式化

第三篇,介绍关于日期常用的计算

第四篇,比较几个常用的日期时间相关类的区别

第五篇,jdk9对日期类进行了更新,写一些i自己的学习心得。

 

1.日期的比较。目前常用的是2种方法。Date里面的before(),after(),compareTo

 1 //日期的比较 两种方法: 第一种before/after  第2种:compareTo
 2     /**
 3      * 测试
 4      * @param args
 5      * @Description:
 6      */
 7     @Test
 8     public void testBeforeAndAfter(){
 9         try {
10             String s1 = "2017-10-31 01:42:11";
11             String s2 = "2017-10-31 01:42:11";
12             SimpleDateFormat sdf = new SimpleDateFormat(DateHelper.DATETIME24_FORMAT1);
13             SimpleDateFormat sdf2 = new SimpleDateFormat(DateHelper.DATE_FORMAT);
14             Date d1 = sdf.parse(s1);
15             Date d2 = sdf.parse(s2);
16             if (d1.before(d2)) {
17                 System.out.println("s1在s2前面");
18             }
19             if(d1.after(d2)) {
20                 System.out.println("s1在s2后面");
21             }
22             System.out.println("s1,s2相等");
23         } catch (ParseException e) {
24             e.printStackTrace();
25         }
26     }
27     
28     /**
29      * 测试
30      * @param args
31      * @Description:
32      */
33     @Test
34     public void testBeforeAndAfter2(){
35         try {
36             String s1 = "2017-10-31 01:42:11";
37             String s2 = "2017-10-32 01:42:12";
38             SimpleDateFormat sdf = new SimpleDateFormat(DateHelper.DATE_FORMAT);
39             Date d1 = sdf.parse(s1);
40             Date d2 = sdf.parse(s2);
41             if (d1.before(d2)) {
42                 System.out.println("s1在s2前面");
43             }
44             if(d1.after(d2)) {
45                 System.out.println("s1在s2后面");
46             }
47             System.out.println("s1,s2相等");
48         } catch (ParseException e) {
49             e.printStackTrace();
50         }
51     }
52     
53     /**
54      * 测试
55      * @param args
56      * @Description:
57      */
58     @Test
59     public void testCompareTo(){
60         try {
61             String s1 = "2017-10-31 01:42:11";
62             String s2 = "2017-10-31 01:43:11";
63             SimpleDateFormat sdf = new SimpleDateFormat(DateHelper.DATETIME24_FORMAT1);
64             Date d1 = sdf.parse(s1);
65             Date d2 = sdf.parse(s2);
66             int result = d1.compareTo(d2);
67             switch (result) {
68             case 1:
69                 System.out.println("s1在s2后面");
70                 break;
71             case -1:
72                 System.out.println("s1在s2前面");
73                 break;
74             default:
75                 System.out.println("s1,s2相等");
76                 break;
77             }
78         } catch (ParseException e) {
79             e.printStackTrace();
80         }
81         
82     }

 

posted on 2017-10-31 02:01  lukelin1989  阅读(282)  评论(0)    收藏  举报

导航