集合的排序
集合的排序
-
实现comparator接口
-
实现Comparable接口
区别:
- comparator 比较类外部实现接口。comparable比较类内部实现接口。
- comparator 方法:compara(参数1,参数2) , comparable (参数1)
- 位于java.util包,位于java.lang包
代码:
//实现comparable接口 比较价格
class Foods implements Comparable<Foods>{
@Override
public int compareTo(Foods o) {
int n = new Double(o.getPrice()-this.getPrice()).intValue();
return n;
}
}
//调用
Collections.sort(list);
//实现comparator接口 比较名字
public class NameCompare implements Comparator<Foods> {
@Override
public int compare(Foods o, Foods t1) {
String name1 = o.getName();
String name2 = t1.getName();
int n = name2.compareTo(name1);
return n;
}
}
//调用
Collections.sort(list,new NameCompare());