私はこのクラスを持っている:ため、別の方法を通じて収集
public class Paint implements Comparable<Paint>{
private String cod_paint;
private String title_paint;
private String author;
private int year;
public Paint(String cod_paint,String title_paint,String author,int year){
this.cod_paint = cod_paint;
this.title_paint = title_paint;
this.author = author;
this.year = year;
}
/* And follow get method */
}
今、私はいくつかのオブジェクトのペイントを作成し、私はこのコレクションを一度にソートする必要があり後に例ArrayList
のためのコレクションにそれらを挿入しますもう1回year
と、もう一度cod_paint
となる。
compareTo
を私は内部実装する必要がこれを行うには:
public int compareTo(Paint p){
return cod_paint.compareTo(p.cod_paint);
}
を、このように私はで私のArrayList<Paint>
ことができるでしょう順序でメソッドsort
を使用しますときcod_paint
。しかし今、どのようにして同じメソッドcompareToで(著者によって、年ごとに)注文するために他の方法を実装することができますか?
(+1)素敵なテクニック! 2つのコンポーネントはかなり共通していますが、私はそれらをこのように組み合わせたことはありません。 – NPE
でも、私のクラスにも同じように追加する必要があります。? –
Mazzy
@Mazzy no、カスタムコンパレータを使用しない場合のみ。 –