java中日期比较_如何在Java中比较日期

java中日期比较

In this tutorial you will learn how to compare dates in Java.

在本教程中,您将学习如何在Java中比较日期。

There are mainly three different ways to compare two dates in Java.

比较Java中的两个日期主要有三种不同的方法。

1. Using compareTo() method 2. Using equals(), before() and after() method 3. Using getTime() method

1.使用compareTo()方法 2.使用equals(),before()和after()方法 3.使用getTime()方法

Below I have shared one example for each of these methods.

下面,我为每种方法共享了一个示例。

How to Compare Dates in Java

如何在Java中比较日期 (How to Compare Dates in Java)

相比于() (compareTo())

We can use compareTo() method of java.util.Date class to compare dates in Java. Let say we are comparing date1 and date2 by date1.compareTo(date2). It returns following result.

我们可以使用java.util.Date类的compareTo()方法比较Java中的日期。 假设我们正在通过date1.compareTo(date2)比较date1和date2。 返回以下结果。

Return 0 if date1 and date2 are equal. Return value less than 0 if date1 is before date2. Return value more than 0 if date1 is after date2.

如果date1和date2相等,则返回0。 如果date1在date2之前,则返回值小于0。 如果date1在date2之后,则返回大于0的值。

package com;
 
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
 
public class CompareDates{
	public static void main(String args[]){
		SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
		
		try {
			Date d1=df.parse("2016-01-3");
			Date d2=df.parse("2016-01-3");
			
			if(d1.compareTo(d2)==0){
				System.out.println("Date1 and Date2 are equal");
			}
			else if(d1.compareTo(d2)<0){
				System.out.println("Date1 is before Date2");				
			}
			else if(d1.compareTo(d2)>0){
				System.out.println("Date1 is after Date2");
			}
		} catch (ParseException e) {
			e.printStackTrace();
		}		
	}
}

Output

输出量

Date1 and Date2 are equal

Date1和Date2相等

equals(),before()和after() (equals(), before() and after())

These are user friendly methods used to compare dates in Java. They are available in java.util.Date class.

这些是用户友好的方法,用于在Java中比较日期。 它们在java.util.Date类中可用。

equals() method returns true if two dates are equal, otherwise returns false. before() method returns true if first date is before second date, otherwise returns false. after() method returns true if first date is after second date, otherwise returns false.

如果两个日期相等,则equals()方法返回true,否则返回false。 如果第一个日期早于第二个日期,则before()方法返回true,否则返回false。 如果第一个日期在第二个日期之后,则after()方法返回true,否则返回false。

package com;
 
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
 
public class CompareDates{
	public static void main(String args[]){
		SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
		
		try {
			Date d1=df.parse("2016-01-5");
			Date d2=df.parse("2016-01-7");
			
			if(d1.equals(d2)){
				System.out.println("Date1 and Date2 are equal");
			}
			else if(d1.before(d2)){
				System.out.println("Date1 is before Date2");				
			}
			else if(d1.after(d2)){
				System.out.println("Date1 is after Date2");
			}
		} catch (ParseException e) {
			e.printStackTrace();
		}		
	}
}

Output

输出量

Date1 is before Date2

Date1在Date2之前

getTime() (getTime())

The getTime() method of java.util.Date class can be also used to compare dates in Java. getTime() method returns the number of milliseconds since January 1, 1970. Below example shows how it can be used.

java.util.Date类的getTime()方法也可以用于比较Java中的日期。 getTime()方法返回自1970年1月1日以来的毫秒数。下面的示例演示如何使用它。

package com;
 
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
 
public class CompareDates{
	public static void main(String args[]){
		SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
		
		try {
			Date d1=df.parse("2016-01-5");
			Date d2=df.parse("2016-01-3");
			
			if(d1.getTime()==d2.getTime()){
				System.out.println("Date1 and Date2 are equal");
			}
			else if(d1.getTime()<d2.getTime()){
				System.out.println("Date1 is before Date2");				
			}
			else if(d1.getTime()>d2.getTime()){
				System.out.println("Date1 is after Date2");
			}
		} catch (ParseException e) {
			e.printStackTrace();
		}		
	}
}

Output

输出量

Date1 is after Date2

Date1在Date2之后

If you found anything incorrect or have doubts related to above Java compare dates tutorial then feel free to comment below.

如果您发现任何不正确的内容或对上述Java比较日期教程有疑问,请在下面发表评论。

翻译自: https://www.thecrazyprogrammer.com/2016/01/how-to-compare-dates-in-java.html

java中日期比较

  • 12
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值