分享

java中Date日期类型的大小比较

 hncdman 2022-12-24 发布于湖南

方法一:

java.util.Date类实现了Comparable接口,可以直接调用Date的compareTo()方法来比较大小

String beginTime = "2018-07-28 14:42:32";String endTime = "2018-07-29 12:26:32";
 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 try {
	Date date1 = format.parse(beginTime);
	Date date2 = format.parse(endTime);

	int compareTo = date1.compareTo(date2);

	System.out.println(compareTo);
	} catch (ParseException e) {
	e.printStackTrace();}12345678910111213141516

compareTo()方法的返回值,date1小于date2返回-1,date1大于date2返回1,相等返回0

方法二:

通过Date自带的before()或者after()方法比较
before() 在...之前
after() 在什么之后

String beginTime = "2018-07-28 14:42:32";String endTime = "2018-07-29 12:26:32";
 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 try {
	Date date1 = format.parse(beginTime);
	Date date2 = format.parse(endTime);

	boolean before = date1.before(date2);

	System.out.println(before);
	} catch (ParseException e) {
	e.printStackTrace();}12345678910111213141516

before()或者after()方法的返回值为boolean类型

方法三:

通过调用Date的getTime()方法获取到毫秒数来进行比较

String beginTime = "2018-07-28 14:42:32";String endTime = "2018-07-29 12:26:32";
 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 try {
	Date date1 = format.parse(beginTime);
	Date date2 = format.parse(endTime);

	long beginMillisecond = date1.getTime();
	long endMillisecond = date2.getTime();

	System.out.println(beginMillisecond > endMillisecond);
	} catch (ParseException e) {
	e.printStackTrace();}

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约