介紹
最近做的一個前台的頁面的獲曲數據庫某個表的列表的功能,要求按照表的某個屬性來升序最好不要動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());
}
}