자동차 목록에 대한 분류 데모를 개발하고 싶습니다. 자동차 목록을 표시하기 위해 데이터 테이블을 사용하고 있습니다. 이제 실제로 자동차 색상별로 목록을 정렬하고 싶습니다. 여기서는 알파벳 순서로 정렬하지 않습니다. Red car가 먼저 온 다음 Blue 등의 맞춤 정렬 순서를 사용하고 싶습니다.
내가 자바를 사용하려고 것을 들어 Comparator
하고 Comparable
있지만 알파벳 순서로만 정렬 할 수 있습니다.
따라서 어느 누구도 정렬이 더 빨라지도록 사용할 기술을 구현하는 방법을 안내 할 수 있습니까?
class Car implements Comparable<Car>
{
private String name;
private String color;
public Car(String name, String color){
this.name = name;
this.color = color;
}
//Implement the natural order for this class
public int compareTo(Car c) {
return name.compareTo(c.name);
}
static class ColorComparator implements Comparator<Car> {
public int compare(Car c1, Car c2) {
String a1 = c1.color;
String a2 = c2.color;
return a1.compareTo(a2);
}
}
public static void main(String[] args) {
List<Car> carList = new ArrayList<>();
List<String> sortOrder = new ArrayList<>();
carList.add(new Car("Ford","Silver"));
carList.add(new Car("Tes","Blue"));
carList.add(new Car("Honda","Magenta"));
sortOrder.add("Silver");
sortOrder.add("Magenta");
sortOrder.add("Blue");
// Now here I am confuse how to implement my custom sort
}
}