5

オブジェクトの配列リストがあります

配列リストのオブジェクトは、「ModuleInfo」(コース、割り当て、dateDue)と呼ばれる大学の情報です。

dateDueは整数YYYYMMDDにフォーマットされています(カレンダーから)

私は人々がこれを行った他のいくつかの方法を見てきましたが、私がしなければならないことが何であるかについて頭を悩ませることはできません。

理想的には、配列リストを作成するときに「ModuleInfo」オブジェクトが含まれることをすでに述べているので、Collection.sort(moduleDB、ModuleInfo.getDateDue)またはそれらの行に沿ったものを使用できます。配列リストであるmoduleDB

どんな助けでも大歓迎です。

4

1 に答える 1

5

を使用Collections.sort(List list)してリストをソートする場合、オブジェクトはComparableインターフェースを実装する必要があります。

public class ModuleInfo implements Comparable<ModuleInfo> {

    /* Your implementation */

    public int compareTo(ModuleInfo info) {
        if (this.dateDue < info.dateDue) {
            return -1;
        } else if (this.dateDue > info.dateDue) {
            return 1;
        } else {
            return 0;
        }
    }
}

Collections.sort(moduleDB)次に、 where moduleDBhas type を呼び出しますArrayList<ModuleInfo>

ps 以前の投稿で述べたように、クラスにインターフェイスを実装させて、Comparator同じ結果を達成することもできます。

于 2012-05-11T04:18:05.707 に答える