Есть класс Car с двумя полями: brand и model.
Также есть List<Car> - список машин различных брендов и моделей.
Задача 1
Привести список к мапе со вложенностью:
Map<String, Map<String, Car>>
Здесь ключ внешней мапы - brand. Значение - мапа со всеми моделями данной марки, в которой ключ - это модель авто, а значение - сам объект.
Задача 2
Отфильтровать
List<Car>Для фильтра используется объект класса Filter с двумя полями: Set<String> brands и Set<String> models;
Правила фильтрации:
Если brands == null, тогда не фильтруем по этому полю. Иначе только те марки машин, которые перечислены в поле brands
Если models == null, тогда не фильтруем по этому полю. Иначе только те модели авто, которые перечислены в поле models
Задача 3
Собрать из
Map<String, Map<String, Car>> список List<Car>Код всего что нужно для решения - в коментах к этому посту.
Постарайтесь использовать Stream API для решения этой задачи.
