Java’da Comparator Interface

sametklou

Java’da Comparator Interface

Java'da Comparator interface, bir sıralama yöntemi sağlar ve nesneleri karşılaştırmak için kullanılır. Bu arayüzü uygulayan sınıflar, nesneleri farklı kriterlere göre sıralamak için kullanılabilir.

Comparator Interface'nin Kullanımı

import java.util.Comparator;

public class Ogrenci {
    private int id;
    private String ad;
    
    public Ogrenci(int id, String ad) {
        this.id = id;
        this.ad = ad;
    }
    
    public int getId() {
        return id;
    }
    
    public String getAd() {
        return ad;
    }
    
    public static Comparator<Ogrenci> idSiralama = new Comparator<Ogrenci>() {
        public int compare(Ogrenci o1, Ogrenci o2) {
            return o1.getId() - o2.getId();
        }
    };
    
    public static Comparator<Ogrenci> adSiralama = new Comparator<Ogrenci>() {
        public int compare(Ogrenci o1, Ogrenci o2) {
            return o1.getAd().compareTo(o2.getAd());
        }
    };
}

// Kullanımı
List<Ogrenci> ogrenciler = new ArrayList<>();
ogrenciler.add(new Ogrenci(1, "Ali"));
ogrenciler.add(new Ogrenci(2, "Ayşe"));
ogrenciler.add(new Ogrenci(3, "Ahmet"));

Collections.sort(ogrenciler, Ogrenci.adSiralama);

Yukarıdaki örnekte, Ogrenci sınıfında id ve ad alanları bulunmaktadır. Daha sonra idSiralama ve adSiralama isimli Comparator'ler tanımlanmıştır. Collections.sort metodunu kullanarak öğrencileri isme göre sıralamak için Ogrenci.adSiralama kullanılmıştır.

Sonuç

Comparator interface, Java'da nesneleri farklı kriterlere göre sıralamak için kullanılan bir arayüzdür. Yukarıdaki örneği inceleyerek, bu arayüzü nasıl kullanabileceğinizi öğrenebilirsiniz. Güçlü bir sıralama işlevselliği sağlayan Comparator interface, Java programlamanızda çok işinize yarayacaktır.