Araba listesi için bir tasnif demosu geliştirmek istiyorum. Araba listesini görüntülemek için veri tablosunu kullanıyorum. Şimdi aslında listeyi araba rengine göre sıralamak istiyorum. Burada alfabetik sıraya göre sıralanmıyor. Önce Kırmızı araba, ardından Mavi vb. Gibi özel sıralama düzenimi kullanmak istiyorum.
Ben Java kullanmayı deneyin Bunun için Comparator
ve Comparable
ancak alfabetik sadece sıralamak için izin verir.
Öyleyse, herhangi biri bana, sıralamanın daha hızlı olması için kullanılacak tekniği uygulama konusunda rehberlik edebilir mi?
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
}
}