以下のように昇順でソートするコンパレータを作成しました。これはうまくいきます。Javaでコンパレータの比較メソッドを実装する最良の方法は?
Collections.sort(resultList,new Comparator<MyModelClass>() {
@Override
public int compare(MyModelClass o1, MyModelClass o2) {
Integer id1= o1.getId();
Integer id2= o2.getId();
if(id1 == null && id2 == null) {
return 0;
}else if(id1 != null && id2 == null) {
return -1;
} else if (id1 == null && id2 != null) {
return 1;
} else {
return id1.compareTo(id2);
}
}
});
このように実装するとよいですか?私を助けてください?
ありがとうございます!
ご返信ありがとうございます。降順で単純に逆にする必要がありますか?返信してください。 – user1016403
はい、id2をid1に変更するだけです。 – Per
David Newcombが指摘しているように、リストにはnull値のリスクがありますが、それは私の心を逃れました。彼の助言も考慮してください。 – Per