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) 收藏 举报