2013-04-10 17 views
5

2つの日付を比較し、日付が期限切れであるかどうかをチェックしたいと思います。ここでjava 2つの日付を比較する

は、私が使用するコードです:

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:ss:ii"); 
Date date1 = sdf.parse("20012-10-4 10:15:25"); 
Date date2 = sdf.parse("2013-10-4 10:15:25"); 

if(date1.equals(date12)){ 
    System.out.println("Both are equals"); 
} 

私は2つの日付を確認したいが、成功せず。

私もそのようにそれをチェックしてみました:

if(date1 >= date2){ 
    System.out.println("Both are not equals"); 
} 

しかし、それはどちらか動作していないです。

+1

あなたはJavadocを読んでいますか? http://docs.oracle.com/javase/6/docs/api/java/util/Date.html#compareTo%28java.util.Date%29 –

+0

yyyy-MM-dd hh:ss:iiは無効です。 http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html – NickJ

+0

[参考資料](http://www.mkyong.com/java/how-to-compare-dates- – gks

答えて

46

java.util.Dateクラスには、日付を比較するbeforeメソッドとafterメソッドがあります。

Date date1 = new Date(); 
Date date2 = new Date(); 

if(date1.before(date2)){ 
    //Do Something 
} 

if(date1.after(date2)){ 
    //Do Something else 
} 
+0

** date1 **が** date2 **より10分遅れているかどうかを確認するにはどうすればよいですか? – tvshajeer

+0

こんにちは日付が等しいかどうかを確認する方法、私はAPIより前に使用するよりもチェックすることができますか? – user1393608

2

JavaDocsを読んでください。

使用方法:あなたが使用することができます

Date.compareTo() 
+5

参照が欠けています – gks

+1

@TheUnluckyとあなたはそれを落としましたか? Nice – Andremoniy

+0

いいえ、あなたに投票しませんでした:) – gks

1

date1.before(date2); 

か:

date1.after(date2); 
2

DateクラスのcompareTo関数を見てください。

JavaDoc

4

このFunction.Itを使用してみてくださいがお手伝いします: -

public class Main { 
public static void main(String args[]) 
{   
    Date today=new Date();      
    Date myDate=new Date(today.getYear(),today.getMonth()-1,today.getDay()); 
    System.out.println("My Date is"+myDate);  
    System.out.println("Today Date is"+today); 
    if(today.compareTo(myDate)<0) 
    System.out.println("Today Date is Lesser than my Date"); 
    else if(today.compareTo(myDate)>0) 
    System.out.println("Today Date is Greater than my date"); 
    else 
    System.out.println("Both Dates are equal");  
    } 
} 
+0

コードの日付部分を編集するだけです。残りはすべて細かいです。 – Tushar

関連する問題