Java’da Sorting Collections

sametklou

Java’da Sorting Collections

Java programlama dilinde, koleksiyonları sıralamak oldukça yaygın bir ihtiyaçtır. Java'da Sorting Collections, koleksiyon elemanlarını istenilen sıralama kriterlerine göre düzenlemek için kullanılır. Bu makalede, Java'da koleksiyonları nasıl sıralayabileceğinizi adım adım öğreneceksiniz.

1. Comparable ve Comparator Kullanımı

Java'da, bir nesneyi doğrudan sıralamak için Comparable arabirimi ve harici bir sıralama kriteri belirtmek için Comparator arabirimi kullanılabilir.

import java.util.ArrayList;
import java.util.Collections;

class Ogrenci implements Comparable<Ogrenci> {
    private String ad;
    private int yas;

    public Ogrenci(String ad, int yas) {
        this.ad = ad;
        this.yas = yas;
    }

    @Override
    public int compareTo(Ogrenci ogrenci) {
        return this.ad.compareTo(ogrenci.ad);
    }
}

public class Main {
    public static void main(String[] args) {
        ArrayList<Ogrenci> ogrenciler = new ArrayList<>();
        ogrenciler.add(new Ogrenci("Ahmet", 22));
        ogrenciler.add(new Ogrenci("Mehmet", 20));
        
        Collections.sort(ogrenciler);
        
        for (Ogrenci ogrenci : ogrenciler) {
            System.out.println(ogrenci.ad + " - " + ogrenci.yas);
        }
    }
}

2. Collections Sınıfı ile Sıralama

Java'da, Collections sınıfı kullanarak da kolayca koleksiyonları sıralayabilirsiniz.

import java.util.ArrayList;
import java.util.Collections;

public class Main {
    public static void main(String[] args) {
        ArrayList<String> isimler = new ArrayList<>();
        isimler.add("Ali");
        isimler.add("Zeynep");
        isimler.add("Can");
        
        Collections.sort(isimler);
        
        for (String isim : isimler) {
            System.out.println(isim);
        }
    }
}

3. Özel Sıralama Kriterleri Belirleme

Comparator arabirimi ile özel sıralama kriterleri belirleyebilirsiniz.

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;

public class Main {
    public static void main(String[] args) {
        ArrayList<Integer> sayilar = new ArrayList<>();
        sayilar.add(5);
        sayilar.add(2);
        sayilar.add(8);
        
        Collections.sort(sayilar, new Comparator<Integer>() {
            @Override
            public int compare(Integer sayi1, Integer sayi2) {
                return sayi1 % 3 - sayi2 % 3;
            }
        });
        
        for (Integer sayi : sayilar) {
            System.out.println(sayi);
        }
    }
}

Java'da Sorting Collections işlemi oldukça önemlidir ve kullanımı oldukça basittir. Yukarıdaki örnekler yardımıyla koleksiyonları sıralamayı öğrenebilir ve istediğiniz sıralama kriterlerine göre düzenleyebilirsiniz.