Junior — Middle
Který návrhový vzor se používá k určení pořadí porovnání objektů?
sobes.tech AI
Odpověď od AI
Pro určení pořadí porovnání objektů se obvykle používá návrhový vzor Strategy (Strategie).
Tento vzor umožňuje definovat rodinu algoritmů porovnání, každý z nich zabalit a používat je zaměnitelně.
V jazyce Java se to často realizuje pomocí rozhraní Comparator<T>, které definuje metodu pro porovnání dvou objektů.
Příklad:
import java.util.*;
class Person {
String name;
int age;
Person(String name, int age) {
this.name = name;
this.age = age;
}
}
// Strategie porovnání podle věku
class AgeComparator implements Comparator<Person> {
public int compare(Person p1, Person p2) {
return Integer.compare(p1.age, p2.age);
}
}
// Použití
List<Person> people = Arrays.asList(new Person("Alice", 30), new Person("Bob", 25));
Collections.sort(people, new AgeComparator());
Tento vzor umožňuje měnit logiku porovnání bez změny třídy objektů.