0

日付/時刻文字列のリストの順序をソートできる Java コンパレータ クラスを実装するにはどうすればよいですか?

例のように

私は持っている

2012-06-15T12:01:00.000+08:00
2012-06-25T12:15:00.000+08:00
2012-06-08T00:00:00.000Z

次に、次のようにソートする必要があります

2012-06-08T00:00:00.000Z
2012-06-15T12:01:00.000+08:00
2012-06-25T12:15:00.000+08:00
4

3 に答える 3

6

ここには2 つの問題があります (文字列を直接解析してもうまくいかないため)。

  1. 文字列を日付に変換します。詳細については、 SimpleDateFormatDateFormat.parse()メソッドを参照してください。
  2. Collections.sortを使用して、コレクション内の後続の日付を並べ替えます。
于 2012-06-15T09:26:39.910 に答える
2

Parse them into java.util.Date. Date already implements Comparable

于 2012-06-15T09:24:52.730 に答える
0

さて、あなたが迅速な解決策が必要な場合、それは次のとおりです。

http://www.ltg.ed.ac.uk/NITE/nxt/apidoc/net/sourceforge/nite/util/SortedList.html

また、日付が異なると確信している場合は、TreeSetを使用してください。次のように使用できます。

新しいTreeSetを作成し、それらに日付を追加し続けます。TreeSetは、比較可能なもの(またはコンパレータが提供されている)を実装している場合、含まれているすべてのオブジェクトをソートするため、自動的にソートされます。

于 2012-06-15T09:59:27.297 に答える