Я определил Product
класс вроде этого:Сортировать и фильтровать список объектов
public class Product {
String name;
ProductType type;
BigDecimal price;
// Getters and Setters omitted
}
С ProductType
как enum
класса:
public enum ProductType {
APPLE, PEAR, BANANA
}
Теперь я создал List<Product>
, где я добавил все виды продукции. Я хотел бы сделать это, чтобы сортировать этот список по цене и фильтровать его по типу.
Каковы стандартные способы реализации такого поведения?
Да, вы делаете продукт для сравнения, поэтому их можно сортировать –
@ cricket_007 Хммм ... Я бы не дал 'Product' реализовать интерфейс' Comparable'. Классы должны реализовывать только это, если существует натуральный порядок_ его экземпляров. Это может быть несколько сложно для продуктов, здесь. Лучше: используйте один или несколько «Компараторов», которые можно использовать для сортировки. – Seelenvirtuose
@Seelenvirtouse Согласовано, сортировка может быть реализована любым атрибутом.Я просто сказал, что это стандартный способ реализации поведения сортировки коллекции. –