Я видел классы, которые реализуют как Comparable, так и Comparator . Что это значит? Почему я должен использовать одно вместо другого?
Я видел классы, которые реализуют как Comparable, так и Comparator . Что это значит? Почему я должен использовать одно вместо другого?
У меня есть список объектов, которые мне нужно отсортировать по полю, например Score. Не задумываясь, я написал новый класс, реализующий Comparator, который выполняет задачу и работает. Теперь, оглядываясь на это, мне интересно, должен ли я вместо этого иметь мой класс, реализующий Comparable,...
Я пытаюсь понять, какой из этих интерфейсов мне нужно реализовать. По сути, они оба делают одно и то же. Когда я буду использовать одно вместо другого?
Я не уверен, как реализовать сопоставимый интерфейс в моем абстрактном классе. У меня есть следующий пример кода, который я использую, чтобы разобраться в нем: public class Animal{ public String name; public int yearDiscovered; public String population; public Animal(String name, int...
кажется, что оба интерфейса сравнивают объекты на предмет равенства, так в чем же между ними основные различия?
Перечисление в Java реализует Comparableинтерфейс. Было бы хорошо , чтобы переопределить Comparable«s compareToметод, но здесь он помечен как окончательный. Естественный порядок по умолчанию на Enum«s compareToявляется перечисленным порядком. Кто-нибудь знает, почему у перечислений Java есть это...
Скажем, у меня есть class Foo(val a: String, val b: Int, val c: Date)и я хочу отсортировать список на Fooоснове всех трех свойств. Как мне это сделать?
Как сравнить значения универсальных типов? Я сократил его до минимального образца: public class Foo<T> where T : IComparable { private T _minimumValue = default(T); public bool IsInRange(T value) { return (value >= _minimumValue); // <-- Error here } } Ошибка: Оператор '> =' нельзя...