누군가가 비교기를 사용하여 Java에서 배열을 정렬하는 예와 결과를 제공 할 수 있습니까? public static void sort(List list, Comparator c);
을 사용해야한다는 것을 알고 있지만 비교기가 정렬 순서를 어떻게 변경합니까?Java에서 컬렉션 정렬
답변
다음은 비교자를 사용하여 정렬하는 좋은 예입니다. http://www.javadeveloper.co.in/java-example/java-comparator-example.html
일반적으로 Comparable
을 구현하고 목록을 sort()
방법으로 전달하면됩니다.
public static void main(String args[]) {
List<ExampleItem> examples = new LinkedList<ExampleItem>();
//Build List
Collections.sort(examples, new ExampleCompartor());//Sort with your comparator
}
//Custom Class to sort
class ExampleItem{
private int data;
}
//Compartor
static class ExampleCompartor implements Comparator<ExampleItem>{
@Override
public int compare(ExampleItem ex1, ExampleItem ex2) {
return ex1.data - ex2.data;
}
}
+1 Comparable을 제안합니다. –
난 당신이 "구현"Comparable, "오버라이드"아니라고 생각합니다. –
@Stephen, 좋은 캐치, 나는 대답을 편집했다. – jzd
public class CompSample {
public static int countVowels(String s) {
return s.replaceAll("[^aeiouAEIOU]", "").length();
}
public static class NumberOfVowelsComparator implements Comparator<String> {
public int compare(String o1, String o2) {
int o1vowels = countVowels(o1);
int o2vowels = countVowels(o2);
return o2vowels - o1vowels;
}
}
public static void main(String[] args) {
String[] words = {"one", "two", "tree", "four"};
List<String> sortedWords = Collections.sort(Arrays.asList(words),
new NumberOfVowelsComparator());
System.out.println(sortedWords);
}
}
- 1. Java에서 프리미티브 순서로 컬렉션
- 2. 배열 순서로 컬렉션 정렬
- 3. 클래식 ASP에서 컬렉션 정렬
- 4. 복합 컬렉션 정렬
- 5. 자바 컬렉션 정렬 인수
- 6. Java에서 문자열 색인화 된 컬렉션
- 7. RESTful 방식으로 컬렉션 정렬 모델링
- 8. Java에서 단일 문자열 정렬
- 9. Java에서 XML 정렬
- 10. Java에서 배열의 ArrayList 정렬
- 11. Java에서 루프 정렬
- 12. Java에서 정렬 문제
- 13. Java에서 문자열 배열 정렬
- 14. Java에서 데이터베이스와 같은 간단한 컬렉션 클래스
- 15. Java에서 SQL 쿼리 결과 정렬
- 16. Java에서 내장 된 비교 정렬
- 17. Silverlight 4의 정렬 된 컬렉션 클래스?
- 18. NHibernate ICriteria - 하위 컬렉션 수로 정렬 하시겠습니까?
- 19. ActiveRecord 또는 ThinkingSphinx에서 가져온 컬렉션 정렬
- 20. 개체 변수에 따라 HashMap에서 개체 컬렉션 정렬
- 21. IComparable 및 컬렉션 정렬 방법에 문제가 있습니다.
- 22. flex의 배열 값을 기반으로 배열 컬렉션 정렬
- 23. Java에서 까다로운 숫자 정렬 질문입니다. if를 사용하여 오름차순 정렬 방법?
- 24. Java에서 이름순으로 파일 정렬 Windows 탐색기와 다릅니다
- 25. Java에서 정렬 알고리즘을 만들려고 시도하지 못했습니다.
- 26. Java에서 정렬 가능한 HashMap과 같은 데이터 구조?
- 27. Delphi에서 Java와 유사한 컬렉션
- 28. 컬렉션
- 29. 컬렉션 동시에
- 30. 컬렉션 확장 클래스 VBA
시작이 읽어 : 당신이 대신 여기에
Comparator
를 사용할 필요하지만 전체 예입니다 http://download.oracle.com/javase/1.4.2/docs/api/java /util/Comparator.html –다음은 현재 API 버전에 대한 링크입니다. http://download.oracle.com/javase/6/docs/api/java/util/Comparator.html – jzd