Junior — Middle
Aký vzor návrhu sa používa na určenie poradia porovnávania objektov?
sobes.tech AI
Odpoveď od AI
Na určenie poradia porovnávania objektov sa zvyčajne používa návrhový vzor Strategy (Stratégia).
Tento vzor umožňuje definovať rodinu algoritmov porovnávania, každý z nich zabalí a používa ich zameniteľne.
V jazyku Java sa to často realizuje pomocou rozhrania Comparator<T>, ktoré definuje metódu na porovnanie dvoch objektov.
Príklad:
import java.util.*;
class Person {
String name;
int age;
Person(String name, int age) {
this.name = name;
this.age = age;
}
}
// Stratégia porovnania podľa veku
class AgeComparator implements Comparator<Person> {
public int compare(Person p1, Person p2) {
return Integer.compare(p1.age, p2.age);
}
}
// Použitie
List<Person> people = Arrays.asList(new Person("Alice", 30), new Person("Bob", 25));
Collections.sort(people, new AgeComparator());
Tento vzor umožňuje meniť logiku porovnania bez zmeny triedy objektov.