GroupingBy с несколькими фильтрами и использованием имени фильтра в качестве ключа в выходной карте.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 GroupingBy с несколькими фильтрами и использованием имени фильтра в качестве ключа в выходной карте.

Сообщение Anonymous »

Предположим, у меня есть 3 или n фильтров. Для этого скажем 3.
Скажем, я определяю эти фильтры и также создаю их карту

Код: Выделить всё

class Person {
Strong status;
}

Predicate
 completedP = j->j.getStatus().equalsIgnoreCase("completed");
Predicate inProgressP = j->j.getStatus().equalsIgnoreCase("inprogress");
Predicate nullStatusP = j->j.getStatus() == null && j.id() == null;

Map filterMap =  Map.of("complatedP",completedP,
"inProgressP", inProgressP, "nullStatusP", nullStatusP);

Теперь предположим, что у меня есть входные данные как List люди
Как мне получить выходные данные/результат как Рассмотрим следующий пример данных

Код: Выделить всё

        Person p1 = new Person("completedP");
Person p2 = new Person("completedP");

Person p3 = new Person("inProgressP");
Person p4 = new Person("inProgressP");

Person p5 = new Person(null);
Person p6 = new Person(null);
Мне нужен результат:

Код: Выделить всё

completedP
ключ для p1,p2

Код: Выделить всё

inProgressP
ключ для p3,p4

Код: Выделить всё

nullStatusP
ключ для p5,p6
Ключом к карте результатов является одно из трех названий фильтров. Я не хочу делать
groupBy 3 раза и каждый раз применять один фильтр.
Как мне обобщить, если на карте есть N фильтров. Однако для моих текущих требований 3 фильтра — это все, что мне нужно

Подробнее здесь: https://stackoverflow.com/questions/788 ... -outputmap
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»