Перегруженный метод LambdaJAVA

Программисты JAVA общаются здесь
Anonymous
Перегруженный метод Lambda

Сообщение Anonymous »

Я новичок в лямбда-выражениях и функциональных интерфейсах. Я пытаюсь реализовать функциональный интерфейс RowListener (ActiveJDBC ORM) с лямбда-выражением, но получаю ошибку компилятора и не знаю почему.
Вот как выглядит старый анонимный класс:

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

db.find("some query", new RowListener() {
@Override
public boolean next(Map arg0) {
// TODO Auto-generated method stub
return false;
}
});
Вот что я хочу сделать:

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

db.find("some query", map -> {
// whatever
});
Ошибка, которая мне выдает:

Метод find(String, Object...) в типе Base неприменим для аргументов (String, (map) -> {})

Я думаю, что он пытается применить лямбда-выражение к перегруженному методу find, который не принимает RowListener в качестве аргумента, но Я не совсем понимаю, почему.
Любой свет, который вы можете пролить на это, будет полезен.

Подробнее здесь: https://stackoverflow.com/questions/332 ... ded-method

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