对LIST的对象排序

 //以下再做了一次排序(字符串排序),其实可以相对应封装的,现在只是简单实现 String num; for (int i = 0; i < list.size(); i++) { num = list.get(i).getCertNum(); for (int j = i; j < list.size(); j++) { String b = list.get(j).getCertNum(); if (num.compareTo(b)>0) { tmp = list.get(j); list.set(j, list.get(i)); list.set(i, tmp); } } } /*以下是另一个方式实现Comparator Collections.sort(list, new Comparator<Person>(){ @Override public int compare(Person o1, Person o2) { if(o1.getCertType()>o2.getCertType()){ return 1; }else if(o1.getCertType()<o2.getCertType()){ return -1; }else{ return o1.getCertNum().compareTo(o2.getCertNum()); } } }); 在这里注意:还有一个对比类:Comparable,这个类要求实体类Person实现的,Comparator就是在已有的实体(没实现Comparable)作排序的选择 */ for (Person p : list) { System.out.println(p.getCertType()+" : "+p.getCertNum()); } } } class Person { private int certType;//证件类型 private String certNum;//证件号码 public Person(int certType, String certNum) { super(); this.certType = certType; this.certNum = certNum; } public int getCertType() { return certType; } public void setCertType(int certType) { this.certType = certType; } public String getCertNum() { return certNum; } public void setCertNum(String certNum) { this.certNum = certNum; } }  

你可能感兴趣的:(对LIST的对象排序)