Sobes.tech
Junior

Təşkil etmə nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Java-da "sıralama" tez-tez kolleksiyanın elementlərini müəyyən bir qaydada yerləşdirmək prosesinə aiddir. Bunun üçün iki əsas mexanizm mövcuddur:

  1. Təbii sıralama (Natural Ordering): Sinif Comparable interfeysini həyata keçirir və compareTo() metodunu müəyyən edir. Bu metod cari obyekti eyni tiplə olan başqa bir obyektlə müqayisə edir və mənfi tam ədəd, sıfır və ya müsbət tam ədəd qaytarır, müvafiq olaraq, cari obyekt "kiçik", "bərabər" və ya "böyük" olur. String, Integer, Double kimi çox sayda standart sinif artıq Comparable-i həyata keçirir.

    // Stringlər üçün təbii sıralama nümunəsi
    String s1 = "apple";
    String s2 = "banana";
    int result = s1.compareTo(s2); // nəticə mənfi olacaq
    
    Integer i1 = 10;
    Integer i2 = 5;
    int result2 = i1.compareTo(i2); // nəticə müsbət olacaq
    
  2. Xüsusi sıralama (Custom Ordering): Ayrı bir sinif yaradılır və Comparator interfeysini həyata keçirir, compare(T o1, T o2) metodunu müəyyən edir. Bu metod iki obyekti müqayisə edir və compareTo()-ya bənzər mənfi, sıfır və ya müsbət tam ədəd qaytarır. Comparator istifadə olunur, əgər təbii sıralama uyğun deyilsə və ya eyni tip üçün müxtəlif sıralama üsulları lazım olarsa.

    import java.util.Comparator;
    
    // String uzunluğuna görə xüsusi sıralama nümunəsi
    public class StringLengthComparator implements Comparator<String> {
        @Override
        public int compare(String s1, String s2) {
            return Integer.compare(s1.length(), s2.length());
        }
    }
    
    // Comparator-dan istifadə
    // List<String> strings = Arrays.asList("orange", "apple", "grape");
    // Collections.sort(strings, new StringLengthComparator());
    // indi siyahı ["apple", "grape", "orange"] olacaq
    

Bu mexanizmlər ArraysCollections siniflərinin sort metodlarında və TreeSet, TreeMap kimi sıralanmış kolleksiyalarda istifadə olunur.