たとえば、この形式の 2 つの日付を比較する簡単な方法があるかどうかを知りたいです。
Wed, 31 Jul 2013 09:31:51
Mon, 05 Aug 2013 10:18:24
最大の日付を表示しますか?
たとえば、この形式の 2 つの日付を比較する簡単な方法があるかどうかを知りたいです。
Wed, 31 Jul 2013 09:31:51
Mon, 05 Aug 2013 10:18:24
最大の日付を表示しますか?
Jodaライブラリを使用することをお勧めします。あなたが持っている日付情報を使用して、DateTime
インスタンスを作成し、isBefore()
メソッドを呼び出して、どちらが最初に来るかを判断します。
Date が実装されていることを示すドキュメントを確認します。Comparable<Date>
date1.compareTo(date2);
あなたが望むことをします。date1
がnull でないことを確認したい場合があります。
日付が(実際には)文字列の場合は、 SimpleDateFormatのparse()
メソッドを使用して文字列から日付に変換し、その比較を実行します。
他の人が示唆しているように、Joda はより優れた日付/時刻ライブラリです (API とスレッドのパフォーマンスが向上します)。
Date d1, d2;
これは最大の日付を返します:
d1.after(d2) ? d1 : d2;
これはあなたのために働くでしょう
DateFormat df=new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss");
Date date1=df.parse("Wed, 31 Jul 2013 09:31:51");
Date date2=df.parse("Mon, 05 Aug 2013 10:18:24");
System.out.println(date1.after(date2) ? date1 : date2);