Sobes.tech
Back to questions
Junior — Middle
61

Можете объяснить, что означает интерфейс Comparable в Java и какую роль он играет при сравнении объектов?

Answer from AI

sobes.tech AI

Интерфейс Comparable в Java определяет метод compareTo(), который позволяет объектам сравниваться между собой для упорядочивания.

Он играет ключевую роль при сортировке и поиске, так как позволяет определить естественный порядок объектов. Метод compareTo() возвращает:

  • отрицательное число, если текущий объект меньше другого,
  • ноль, если объекты равны,
  • положительное число, если текущий объект больше другого.

Пример:

public class Person implements Comparable<Person> {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    @Override
    public int compareTo(Person other) {
        return Integer.compare(this.age, other.age);
    }
}

Здесь объекты Person будут сравниваться по возрасту, что позволяет, например, сортировать список людей по возрасту.