1

たとえば、この形式の 2 つの日付を比較する簡単な方法があるかどうかを知りたいです。

Wed, 31 Jul 2013 09:31:51

Mon, 05 Aug 2013 10:18:24

最大の日付を表示しますか?

4

7 に答える 7

6

Jodaライブラリを使用することをお勧めします。あなたが持っている日付情報を使用して、DateTimeインスタンスを作成し、isBefore()メソッドを呼び出して、どちらが最初に来るかを判断します。

于 2013-08-07T09:12:19.073 に答える
6

Date が実装されていることを示すドキュメント確認します。Comparable<Date>

date1.compareTo(date2);

あなたが望むことをします。date1がnull でないことを確認したい場合があります。

日付が(実際には)文字列の場合は、 SimpleDateFormatparse()メソッドを使用して文字列から日付に変換し、その比較を実行します。

他の人が示唆しているように、Joda はより優れた日付/時刻ライブラリです (API とスレッドのパフォーマンスが向上します)。

于 2013-08-07T09:13:02.517 に答える
3

Date d1, d2; これは最大の日付を返します: d1.after(d2) ? d1 : d2;

于 2013-08-07T09:16:17.283 に答える
0

これはあなたのために働くでしょう

  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);
于 2013-08-07T09:27:37.793 に答える