第一种方式直接实现Comparator接口
使用
第二种方式
PlayerItem实现Comparable接口中的比较方法。
这两种方式个人比较喜欢第一种方式,侵入相当小,重用度高。
public class ComparatorPlayerItem implements Comparator<PlayerItem> {
public int compare(PlayerItem playerItem1, PlayerItem playerItem2) {
Item item1 = playerItem1.getItem();
Item item2 = playerItem2.getItem();
//默认是按从小到大序,前加负号表示从大到小排序
return -(item1.getLevel() - item2.getLevel());
}
}
使用
Collections.sort(objs,new ComparatorPlayerItem());
第二种方式
PlayerItem实现Comparable接口中的比较方法。
这两种方式个人比较喜欢第一种方式,侵入相当小,重用度高。