Habt ihr einen allgemeinen Ansatz wie man mehrere Comparatoren zusammenfassen tut?:
... möchte gerne nur einen
Java:
Collections.sort(trades, new Comparator<MyTrade>() {
@Override
public int compare(MyTrade o1, MyTrade o2) {
return (int) (o2.profit - o1.profit);
}
});
Collections.sort(trades, new Comparator<MyTrade>() {
@Override
public int compare(MyTrade o1, MyTrade o2) {
int d1 = (int) (o1.sysDis / 10f);
int d2 = (int) (o2.sysDis / 10f);
return d1 - d2;
}
});
Collections.sort(trades, new Comparator<MyTrade>() {
@Override
public int compare(MyTrade o1, MyTrade o2) {
float f1 = getSysDis(o1.buyItem.sta.sys, lhs22);
float f2 = getSysDis(o2.buyItem.sta.sys, lhs22);
if (f1 > 75) {
if (f2 > 75) {
return 0;
} else {
return +1;
}
} else {
if (f2 > 75) {
return -1;
} else {
return 0;
}
}
}
});
sort
Aufruf, mit demselben Effekt...