Что такое "естественный порядок"?
У меня есть класс:
class Message {
String id;
Date sentDate;
String clientName;
String type;
}
В моем приложении сообщения сортируются по sentDate
для всех случаев использования, которые я имею сейчас и предполагаю в будущем.
Означает ли это, что для сообщения включен естественный порядок sentDate
и Message
класс может реализовать Comparable
основанный на этой области, или есть какое-либо формальное определение естественного порядка, которому мое понимание не соответствует?
Я знаю, что могу использовать Comparator, поэтому я задаю этот вопрос, чтобы понять, какой вопрос я должен задать себе о классе X, чтобы понять, имеют ли объекты класса X естественное упорядочение по полю Y.
2 ответа
Естественное упорядочение объектов Java - это упорядочение на основе Comparable
реализация интерфейса (т.е. метод compareTo
).
Сортировка по морскому порядку является своего рода общим термином, который относится к тому, как люди сортируют вещи. Чаще всего это относится к числам (но не всегда) и тому, как они сортируются по сравнению с ASCIIbetical.
Список:
id2
id12
id1
ASCIIbetical Сортировка:
id1
id12
id2
Естественная сортировка заказов:
id1
id2
id12