자바 대상 속성 에 따라 정렬

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();
		//  1
		List 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());
		}
	}
}

좋은 웹페이지 즐겨찾기