1. 程式人生 > >List根據實體類的某個屬性升序或者降序來排列

List根據實體類的某個屬性升序或者降序來排列

介紹

最近做的一個前臺的頁面的獲曲資料庫某個表的列表的功能,要求按照表的某個屬性來升序最好不要動mybatis,所以通過mybatis獲取的list,通過方法的 Collections.sort(list, new Comparator() {…});進行排序

升序 / 降序

int i=o1.getMissId()-o2.getMissId();//升序
// int i=o2.getMissId()-o1.getMissId();降序

具體的程式碼的簡單例項

import java.util.*;

/**
 * List根據實體類的某個屬性升序或者降序來排列
 *
 * @author hjsjy
 * @create 2018/12/20
 * @since 1.0.0
 */
class Mission{ int missId; String name; public Mission(int missId, String name){ this.missId = missId; this.name =name; } public int getMissId() { return missId; } public void setMissId(int missId) { this.missId = missId; } public
String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "Mission{" + "missId=" + missId + ", name='" + name + '\'' + '}'; } }
public class ListTest { public static void main(String[] args) { Mission mission1 =new Mission(89,"鳴人"); Mission mission2 =new Mission(50,"路飛"); Mission mission3 =new Mission(100,"一護"); List<Mission> list =new ArrayList<>(); list.add(mission1); list.add(mission2); list.add(mission3); System.out.println(list.toString()); Collections.sort(list, new Comparator<Mission>() { @Override public int compare(Mission o1, Mission o2) { int i=o1.getMissId()-o2.getMissId();//升序 // int i=o2.getMissId()-o1.getMissId();降序 return i; } }); System.out.println(list.toString()); } }

在這裡插入圖片描述