Использование переменной в методе equals в лямбда-выражении

138
20 июня 2018, 06:20

Можно ли как-то реализовать сравнение строк в лямбда-выражении при условии, что одна из строк - это переменная? Хочу сделать DAO интерфейс с методом find, который принимал бы лямбда-выражение. Что-то вроде этого object -> object.getValue().equals(variable). Но IDE ругается, говорит, что переменные должны быть final или просто не должны меняться в коде.

Answer 1

Лямбды - это элемент функционального программирования, а в функциональном программировании любую проблему можно решить применением функции высшего порядка:

Function<String, Predicate<String>> f = v -> s -> s.equals(v);
String variable = "Hello";
Predicate<String> p = f.apply(variable);
System.out.println(p.test("Hello"));
System.out.println(p.test("World"));
READ ALSO
Когда нужно делать clean package Мавеном

Когда нужно делать clean package Мавеном

У меня есть непонимание после каких изменений нужно делать clean-packageУ меня довольно большой проект и тратить по 10-15 минут на clean-package каждый...

133
Ошибка при отправке ответа в Spring MVC

Ошибка при отправке ответа в Spring MVC

Здравствуйте возникла проблема со Spring MVC, пример заключается в следующем:

162