2012-06-10 2 views
-3
를 포함하는 배열을 정렬하는 방법

사람이 배열을 정렬하는 방법을 말해 주시겠습니까 : 당신은 당신이이 시간 간격을 비교하는 방법을 결정해야합니다JAVA는 .. 시간

String[] time = {"3:40 PM - 5:50 PM", "4:40 PM - 5:50 PM", "2:00 PM - 3:00 PM", 
       "10:30 PM - 11:00 PM","1:00 PM - 2:30 PM", "6:30 PM - 7:00 PM", 
       "3:40 PM - 5:50 PM"}; 
+2

뭘하여 정렬 할 수 있습니까? 너 뭐 해봤 니? – Vulcan

+1

그들은 시간 간격이 아니라 시간 간격을 나타냅니다. 그 논리는 무엇입니까? –

+0

어떤 속성을 정렬 하시겠습니까? 지속 시간, 시작일, 종료 시간? 유사한 출발 시간은 어떻게 처리합니까? – Hidde

답변

1

. 다음과 같이 구현하십시오.

Arrays.sort(time, new Comparator<String>() { 
        @Override 
        public int compare(String timeInterval1, String timeInterval2) { 

         String[] tokens1 = timeInterval1.split("-"); 
         String[] tokens2 = timeInterval2.split("-"); 

         return tokens2[0].compareTo(tokens1[0]); 
        } 
       }); 

두 값을 비교하여 어느 것이 더 작거나 더 큰지를 결정할 필요가 있습니다. 비교기는 큰 경우 +1을, 같으면 0을, 작은 경우 -1을 반환합니다. 자세한 내용은

이 문서를 참조하십시오 http://www.javabeat.net/2007/09/sorting-custom-types-in-java/

+0

코드 예제가 컴파일되지 않습니다. – meriton

+1

비교기는 -1, 0 또는 +1은 아니지만 음수 값, 0 또는 양수 값을 반환하지 않아야합니다. –

+0

@meriton - 예제는 아이디어 (생각을위한 방향)를주기위한 것입니다. – DmitryK

관련 문제