2016-09-30 57 views
4

私は0 ... 4日付を格納するArrayListを持っています。Javaでリストの最古の日付を取得するには?

リスト内の日付の量は、ビジネスロジックによって異なります。

このリストの最古の日付はどのように取得できますか?もちろん、私は最終的に最も早い日付を取得するために反復ループを構築することができます。しかし、特にこのリストを後の視点で成長させることができると考えると、これを行うための「よりクリーンな」/より速い方法がありますか?

Date minDate = Collections.min(listOfDates); 

これは、そこには、リスト内の少なくとも1つの要素であることに依存している:あなたは、単に使用できるように

+0

@AndyTurnerの場合、このコメントを回答として投稿する必要があります。 –

答えて

0

あなたが挿入順序を変更するには、心をいけない場合は、リストをソートし、あなたは(TreeSetのような)SortedSetを使用して考えることができ、アプリケーションに応じて、インデックス0

+1

リストをソートするのは 'O(n log n)'操作です。リストを反復するだけで、最小要素を 'O(n) 'に見つけることができます。 –

+0

かなり良い!!! +1! –

0

SortedSet

でelemeentを取得します。これにより、コレクションを変更して、常に最低の要素を簡単に受け取ることができます。

ただし、コレクションに要素を追加するのはよりコストがかかります。

関連する問題