java_比较日期的早晚(大小)

package study.date;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

/*两个日期的大小比较方式,几种方法。
*/
public class CompareData {
    public static void main(String[] args) {
        String beginTime=new String("2017-06-09 10:22:22");
        String endTime=new String("2017-05-08 11:22:22");
        //1  直接用Date自带方法before()和after()比较
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date sd1= null;
        try {
            sd1 = df.parse(beginTime);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        Date sd2= null;
        try {
            sd2 = df.parse(endTime);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        System.out.println("方法1:");
        System.out.println(sd1.before(sd2)+"返回true说明sd1早于sd2,否则反之");
        //System.out.println(sd1.after(sd2));
       // 2  用String的compareTo()方法:
        Integer i=beginTime.compareTo(endTime);
        System.out.println("方法2:\n"+i+" 返回正值是代表左侧日期大于参数日期,反之亦然,日期格式必须一致.");
        //返回正值是代表左侧日期大于参数日期,反之亦然,日期格式必须一致
        //3  转成date格式换成秒数比较秒数大小,getTime()方法

        try {
            sd1 = df.parse(beginTime);
        } catch (ParseException e) {
            e.printStackTrace();
        }

        try {
            sd2 = df.parse(endTime);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        long long1 =sd1.getTime();
        long long2= sd2.getTime();
        System.out.println((long1>long2) +" 返回true为前者大(晚)");
    }
}

posted @ 2024-08-23 12:50  xuchaoxin1375  阅读(27)  评论(0)    收藏  举报  来源