Sobes.tech
Junior — Middle
122

Java тілінде Comparator интерфейсі дегеніміз не екенін түсіндіріңіз.

AI-дан жауап

sobes.tech AI

Java-да Comparator интерфейсі объектілердің тәртібін анықтау үшін пайдаланылады, егер табиғи тәртіп (Comparable арқылы) сәйкес келмесе немесе жоқ болса. Ол compare(T o1, T o2) әдісін қамтиды, ол екі объектіні салыстырады және қайтару мәні:

  • o1 o2-ден кіші болса, теріс сан
  • тең болса, нөл
  • o1 o2-ден үлкен болса, оң сан

Бұл коллекцияларды әртүрлі критерийлер бойынша сұрыптауға мүмкіндік береді, объектілердің өз кластарын өзгерту қажет емес.

Қолдану мысалы:

List<String> names = Arrays.asList("Anna", "John", "Bob");

// Жол ұзындығы бойынша сұрыптау
Collections.sort(names, new Comparator<String>() {
    @Override
    public int compare(String s1, String s2) {
        return Integer.compare(s1.length(), s2.length());
    }
});

// Немесе лямбда-экспрессиямен
Collections.sort(names, (s1, s2) -> s1.length() - s2.length());