Sortieren Sie die Objekte in einer Sammlung in aufsteigender oder absteigender Reihenfolge entsprechend der Größe eines bestimmten Indikators des Objekts. Der Code lautet wie folgt:
Sortieren in absteigender Reihenfolge
进行降序排列 Collections.sort(list, new Comparator<ResultTypeDesc>() { public int compare(ResultTypeDesc o1, ResultTypeDesc o2) { return o2.getRatio().compareTo(o1.getRatio()); } });
Sortieren in aufsteigender Reihenfolge
Collections.sort(list, new Comparator<ResultTypeDesc>() { public int compare(ResultTypeDesc o1, ResultTypeDesc o2) { return o1.getRatio().compareTo(o2.getRatio()); } });
Nach dem Test wurde festgestellt, dass nur die Positionen der beiden Objekte ausgetauscht werden müssen, um aufzusteigen oder abzusteigen.
Wenn die Indikatoren gleich sind, muss zum Sortieren nach mehreren Indikatoren ein Komparator erstellt werden:
import java.util.*; public class ComparatorResultType implements Comparator{ public int compare(Object arg0, Object arg1) { ResultTypeDesc desc0=(ResultTypeDesc)arg0; ResultTypeDesc desc1=(ResultTypeDesc)arg1; //首先比较主指标,如果主指标相同,则比较次指标 int flag=desc0.getXXX().compareTo(desc1.getXXX()); if(flag==0){ return desc0.getXXX2().compareTo(desc1.getXXX2()); }else{ return flag; } } } //测试类中代码: ComparatorResultType comparator=new ComparatorResultType(); Collections.sort(list, comparator);
Inverse Ausgabe der Listensammlung:
Collections.reverse(list);
ResultTypeDesc ist das erforderliche Entitätsklassenobjekt. Sie können es basierend auf Ihrem eigenen Code verwenden.
Diese Methode meldet möglicherweise einen Nullzeiger. Sie können ihn je nach Situation selbst lösen und feststellen, ob er NULL ist.
Weitere Artikel zu JAVA-Sortierlistensammlungen Collections.sort() finden Sie auf der chinesischen PHP-Website!