publicclassPersonimplementsComparable<Person>{private String name;private Integer order;/**
* @return the name
*/public String getName(){return name;}/**
* @param name
* the name to set
*/publicvoidsetName(String name){this.name = name;}/**
* @return the order
*/public Integer getOrder(){return order;}/**
* @param order
* the order to set
*/publicvoidsetOrder(Integer order){this.order = order;}@OverridepublicintcompareTo(Person arg0){returnthis.getOrder().compareTo(arg0.getOrder());//这里定义你排序的规则。}}
(2). Test class
publicstaticvoidmain(String[] args){//初始化数据
List<Person> listA =newArrayList<Person>();
Person p1 =newPerson();
Person p2 =newPerson();
Person p3 =newPerson();
p1.setName("name1");
p1.setOrder(1);
p2.setName("name2");
p2.setOrder(2);
p3.setName("name3");
p3.setOrder(3);
listA.add(p2);
listA.add(p1);
listA.add(p3);//排序
Collections.sort(listA);//打印排序后的Personfor(Person p : listA){
System.out.println(p.getName());}}
publicclassPerson{private String name;private Integer order;/**
* @return the name
*/public String getName(){return name;}/**
* @param name
* the name to set
*/publicvoidsetName(String name){this.name = name;}/**
* @return the order
*/public Integer getOrder(){return order;}/**
* @param order
* the order to set
*/publicvoidsetOrder(Integer order){this.order = order;}}
(2). Test class
publicstaticvoidmain(String[] args){
List<Person> listA =newArrayList<Person>();
Person p1 =newPerson();
Person p2 =newPerson();
Person p3 =newPerson();
p1.setName("name1");
p1.setOrder(1);
p2.setName("name2");
p2.setOrder(2);
p3.setName("name3");
p3.setOrder(3);
listA.add(p2);
listA.add(p1);
listA.add(p3);//直接在这里添加我们的排序规则
Collections.sort(listA,newComparator<Person>(){publicintcompare(Person arg0, Person arg1){return arg0.getOrder().compareTo(arg1.getOrder());}});for(Person p : listA){
System.out.println(p.getName());}}