Junior — Middle
Vysvetlite, čo sa rozumie pod rozhraním Comparator v jazyku Java.
sobes.tech AI
Odpoveď od AI
Rozhranie Comparator v jazyku Java sa používa na určenie poradia objektov, keď prirodzené poradie (Comparable) nie je vhodné alebo chýba. Obsahuje metódu compare(T o1, T o2), ktorá porovnáva dva objekty a vracia:
- záporné číslo, ak je
o1menšie akoo2 - nulu, ak sú rovné
- kladné číslo, ak je
o1väčšie akoo2
Toto umožňuje triedenie kolekcií podľa rôznych kritérií bez zmeny samotných tried objektov.
Príklad použitia:
List<String> mená = Arrays.asList("Anna", "John", "Bob");
// Triedenie podľa dĺžky reťazca
Collections.sort(mená, new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return Integer.compare(s1.length(), s2.length());
}
});
// Alebo s lambda výrazom
Collections.sort(mená, (s1, s2) -> s1.length() - s2.length());