Java에 익숙하지 않아 비교기 인터페이스를 구현하는 동안 비교 방법에 다른 유형의 객체를 사용할 수 있는지 확인하고 싶습니다. 좋아요. 비교 (직원, 부서). 또는 우리는 동일한 유형의 개체 Ex, Employee 또는 Department를 전달할 것입니다. 대답을 자세히 적어 주시면 도움이 될 것입니다. 사전 샤 히드 나를 .Thanks을 확인하시기 바랍니다 것은Java Comparator Related
답변
당신은 같은 방법을 구현할 수 있습니다
int compare(Object a, Object b);
을하고 원하는 경우 사과에 오렌지를 비교합니다. 좀 더 엄격해야 할 필요가 있다면, 비교 대상이 공통으로 갖고 있어야하는 것을 정의 할 수 있어야한다. 당신의 직원 및 부서 클래스 모두를 구현할 수 있도록 다음
public interface CorporateObject
{
int getUselesnessFactor();
}
과 : 그럼 당신은 인터페이스를 시작할 수 있습니다
public class Employee implements CorporateObject
{...
public class Department implements CorporateObject
{...
마지막 방법이 보일 것이다 비교 같은 :
public int compare(CorporateObject a, CorporateObject b){
if(a.getUselesnessFactor() < b.getUselesnessFactor()) return -1;
if(a.getUselesnessFactor() > b.getUselesnessFactor()) return 1;
return 0;
}
이 방법은 다음과 같이 사용합니다.
int result;
Employee boss = new Employee();
Employee john = new Employee();
Department nosepickers = new Departement();
Department slackmasters = new Department();
result = compare(boss, john); // employee to employee
result = compare(nosepickers, slackmasters); // dept to dept
result = compare(boss, nosepickers); // employee to dept
result = compare(slackmasters, john); // dept to employee
등
우리는 직원 및 부서 참조 (Employee emp, 부서 dept) CorporateObject 대신 비교할 패스, 나는 또한 작동해야한다고 생각 ... 만약 내가 잘못 pls 귀하의 개념 (corporateObject, CorporateObject b)를 이해하는 데 도움이 .. 귀하의 코드에 따라 내 이해는 항상 동일한 유형의 참조 걸릴 비교 메서드입니다. Pls help – shahid
편집 된 답변보기 - 두 가지를 모두 조합하여 전달할 수 있습니다. 이것이 바로 인터페이스가있는 이유입니다. compare 메소드는 공용 인터페이스를 구현하는 한 정확히 어떤 CorporateObject를 전달하든 상관하지 않습니다. – ptrk
귀중한 의견에 감사드립니다. 그것은 개념을 더 분명히 이해하는 데 많은 도움이되었습니다. – shahid
- 1. Java - Comparator
- 2. Java Comparator 구현
- 3. Java + comparator + sort
- 4. Java Comparator compareToIgnoreCase
- 5. Java TreeMap Comparator
- 6. Java PriorityQueue Comparator
- 7. Java 인터페이스 Comparator 정적 비교
- 8. 대체 문자열 정렬을위한 Java Comparator
- 9. 동등한 항목이있는 집합의 Java Comparator
- 10. SubQuery related
- 11. 2D 배열로 TreeSet 용 Comparator 만들기 - Java
- 12. 특정 객체 배열을 정렬하는 Java Comparator 클래스
- 13. Java PriorityQueue Comparator - 언제/어떻게 정렬합니까?
- 14. Opening related links
- 15. android related spinner
- 16. Shopify/Liquid related
- 17. android related project
- 18. PHP : Longpolling & Comet related
- 19. Cakephp - Indented Related Comments
- 20. UIDocument related EXC_BAD_ACCESS
- 21. Python - Finance Matplotlib related
- 22. JavaBeans Comparator/Diff
- 23. 추상 클래스에서 Comparator 구현
- 24. TreeSet Rectangle Comparator
- 25. Comparable and Comparator Interface
- 26. Comparator - 특수 문자 정렬
- 27. Comparator 인터페이스를 사용한 오류
- 28. Multiline lambda comparator
- 29. cairngorm이란 무엇입니까? "Comparator"
- 30. Java에서 COMPARATOR 구현
왜 그렇게하고 싶습니까? –
인터페이스를 구현하여 비교할 수 있습니다. – tung
'Object's로 비교할 수 있습니다. 자바의 모든 객체는'Object' 클래스에서 상속받습니다. – khelwood