Junior — Middle
Magyarázza el, mit értünk a Comparator interfész alatt a Java nyelvben.
sobes.tech MI
Válasz az MI-től
A Java Comparator interfészét arra használják, hogy meghatározzák az objektumok sorrendjét, amikor a természetes sorrend (Comparable) nem megfelelő vagy hiányzik. Tartalmazza a compare(T o1, T o2) metódust, amely két objektumot összehasonlít és visszaadja:
- negatív számot, ha
o1kisebb, minto2 - nullát, ha egyenlőek
- pozitív számot, ha
o1nagyobb, minto2
Ez lehetővé teszi, hogy kollekciókat különböző kritériumok szerint rendezzünk anélkül, hogy módosítanánk az objektum osztályait.
Használati példa:
List<String> nevek = Arrays.asList("Anna", "John", "Bob");
// Rendezés a sztring hosszának szerint
Collections.sort(nevek, new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return Integer.compare(s1.length(), s2.length());
}
});
// Vagy lambda kifejezéssel
Collections.sort(nevek, (s1, s2) -> s1.length() - s2.length());