anxingyu_1984 发表于 2013-2-4 19:20:52

java 按对象属性排序

1、为了尽可能少的交互数据库
2、工作中难免会遇到得到一个集合,需要按每个对象的其中的属性进行排序
模板类:
 
public class User {private String name;private String sex;private int age;public User(String name, String sex, int age) {this.name=name;this.sex=sex;this.age=age;}public User() {}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}} 实现类:
import java.util.*;public class Simple implements Comparator<User> {/** * 覆盖方法 * */public int compare(User o1, User o2) { //if(o1.getAge()==o2.getAge())//数字比较,由小到大//return o1.getAge()>o2.getAge()?1:-1;if(o1.getName().equals(o2.getName()))//姓名比较,return o1.getName().compareTo(o2.getName());return 0;}public static void main(String[] args) {User u1 = new User();User u2 = new User();User u3 = new User();u1.setName("a");u1.setSex("男");u1.setAge(15);u2.setName("c");u2.setSex("女");u2.setAge(12);u3.setName("b");u3.setSex("男");u3.setAge(11);Simple sim = new Simple();//排序1List list = new ArrayList();list.add(u1);list.add(u2);list.add(u3);Collections.sort(list, sim);Iterator it = list.iterator();//while (it.hasNext()) {//User e = (User) it.next();//System.out.println(e.getName() + " sex 是:" + e.getSex() + " age 是:" + e.getAge());//}for (Object object : list) {User e = (User) object;System.out.println(e.getName() + " sex 是:" + e.getSex() + " age 是:" + e.getAge());}}} 
页: [1]
查看完整版本: java 按对象属性排序