В моем коде у меня есть List<Person>
.Атрибуты к объектам в этом списке могут включать что-то вроде:
В части моего приложения я буду позволять пользователю выполнять поиск конкретного человека, используя любую комбинацию этих трех значений.На данный момент у меня есть оператор switch, просто проверяющий, какие поля заполнены, и вызывающий метод, предназначенный для этой комбинации значений.
т.е.:
switch typeOfSearch
if 0, lookById()
if 1, lookByIdAndName()
if 2, lookByFirstName()
и так далее.На самом деле существует 7 различных типов.
Это дает мне один метод для каждого оператора.Это «хороший» способ сделать это?Есть ли способ, которым я должен использовать параметр или какой-то «фильтр»?Это может не иметь значения, но я кодирую это на Java.