2017-11-13 1 views
0

해당 날짜에 따라 인스턴스를 정렬 할 수 있도록 내 클래스에 compareTo() 메서드를 재정의하려고합니다.Rhino Java 환경에서 Comparator 메서드를 사용하는 방법

이 프로그램을 실행하면 잘못된 결과가 발생합니다. Rhino 환경에서 작업하기 때문에 Javascript로 작성합니다. 내가 도움이된다면 확실하지 오전하지만 난 코드를 작성하는 execute-rhino-online 온라인 편집기를 사용하고 있습니다 : 당신이 존재하지 않는 방법을 무시하고 있기 때문에

var arrayList = java.util.ArrayList(); 
var Object1 = new java.util.HashMap(); 
var Object2 = new java.util.HashMap(); 
var Object3 = new java.util.HashMap(); 
Object1.put("Job Number", "222"); 
Object1.put("Date", java.util.Date(2017, 10, 11)); 
Object2.put("Job Number", "333"); 
Object2.put("Date", java.util.Date(2017, 10, 13)); 
Object3.put("Job Number", "111"); 
Object3.put("Date", java.util.Date(2017, 10, 10)); 
arrayList.add(Object1); 
arrayList.add(Object2); 
arrayList.add(Object3); 

var comp = java.util.Comparator({ 
    compareTo: function(o1, o2) { 
    var d1 = o1.get("Date"); 
    print(d1); 
    var d2 = o2.get("Date"); 
    if (d1.before(d2)) { 
     return -1; 
    } else if (d1.after(d2)) { 
     return 1; 
    } else { 
     return 0; 
    } 
    } 
}); 
java.util.Collections.sort(arrayList, comp); 
print(arrayList); 

답변

관련 문제