Имам ArrayList от модел на данни, който има 10 полета въз основа на въведеното от потребителя, което ми трябва, за да приложа динамично предикатното условие върху избраното от потребителя поле към филтъра на потока.
Фрагментът по-долу се прилага с едно от полето itemDesc, но по време на изпълнение потребителят може да избере всяко поле.
Predicate<DataModel> contains = (n) -> n.getItemDesc().contains(query);
List filtered = data.stream().filter(contains).collect(Collectors.toList());
По принцип трябва да изградим предиката динамично вместо предварително дефиниран, възможно ли е, ако е така, някакви примери. Благодаря предварително.