- 实体类我就不写了,直接上数据吧!
List<PersionInfo> list=new ArrayList<>(); PersionInfo info1=new PersionInfo("555","33","333");
PersionInfo info2=new PersionInfo("222","44","22");
PersionInfo info3=new PersionInfo("4444","22","333"); PersionInfo info4=new PersionInfo("111","666","333");
PersionInfo info5=new PersionInfo("000","55","333");
list.add(info1);
list.add(info2);
list.add(info3);
list.add(info4);
list.add(info5);
for (int i=0;i<list.size();i++){
System.out.println(list.get(i).toString()+"11==");
}
ComparatorUser comparatorUser=new ComparatorUser();
Collections.sort(list,comparatorUser);
for (int i=0;i<list.size();i++){
System.out.println(list.get(i).toString()+"22==");
}
class ComparatorUser implements Comparator{
@Override
public int compare(Object object1, Object object2) {
PersionInfo info1= (PersionInfo) object1;
PersionInfo info2= (PersionInfo) object2;
//首先比较年龄,如果年龄相同,则比较名字
//默认flag值1,默认是升序,如果返回是为-flag则是降序
int flag=info1.getAge().compareTo(info2.getAge());
if(flag==0){
return info1.getName().compareTo(info2.getName());
}else {
return flag;
}
}
}版权声明:本文为jky_yihuangxing原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。