기술참고자료/JAVA | 2011. 5. 2. 13:33
샘플 코드
List<TestBean> testList = new ArrayList<TestBean>(testMap.values());
Comparator<TestBean> c = Collections.reversOrder();
Collections.sort(testList, c);
위의 예처럼
1. 먼저 대상 맵의 value 만을 가지고 리스트를 하나 만든다.
2. 어떻게 비교할것인지 정한다 (여기선 내림차순)
3. Collections.sort 메소드에 위에서 만든 대상 리스트와 비교 방법을 넣어준다.
이렇게 하면 리스트가 정렬되어있다
여기서 리스트가 직접 정의한 클래스를 대상으로 비교를 해야하는 경우에는
해당 클래스가 Comparable 인터페이스를 구현하고, compareTo() 메소드를 오버라이드 하고 있어야 한다
위의 예를 들면(여기서는 해당 객체의 count를 가지고 비교를 하려고 한다)
요렇게 되어있으면 된다!!public TestBean implements Comparable{
private int count;
public int compareTo(Object arg0){
TestBean comparer = (TestBean) arg0;
return this.count - comparer.count;
}
}
출처 : http://blog.daum.net/_blog/BlogTypeView.do?
blogid=0QJho&articleno=31&_bloghome_menu=recenttext#ajax_history_home
How to add SVN plugin for STS ? (0) | 2011.12.20 |
---|---|
[JAVA] XML 직렬화도구 - Simple Framework (1) | 2011.06.21 |
HttpClient의 심플한 사용 (0) | 2011.03.21 |
List Sort Sample Using Comparator<T> Interface (0) | 2011.03.17 |
DOM Parser vs SAX Parser (0) | 2011.03.17 |
Recent Comments